zoukankan      html  css  js  c++  java
  • 一次深刻的教训。js和java投票界面功能提供 ajax返回前后台代码以及动态的添加input和点击动态添加的input的单击事件

    后台代码ajax返回值的封装:

    Map resultMap = new HashMap();

    PrintWriter    pw = response.getWriter();

    resultMap.put("code","WEB-0002");
    resultMap.put("message","对不起,您是机构用户,无权投票");
    pw.print(JSONObject.fromObject(resultMap).toString());

    也可以返回list数据

    resultMap.put("code","WEB-0000");
    resultMap.put("message","");
    resultMap.put("result",subjectOptionList); //---直接写list对象 
    resultMap.put("title",surveySubjectBean.getTitle());
    pw.print(JSONObject.fromObject(resultMap).toString());

    前端接受:

    $.ajax({
    type: "get",
    url:'访问路径',
    async : false,
    dataType : "json",
    success: function(data){
    if(data.code == "WEB-0000"){
    $("#myform input[type='button']").remove();
    jsonData = JSON.stringify(data.result); //----转换成json字符串
    json= JSON.parse(jsonData);     //----转换成json对象

    //---拼接input 并appendChild在一个表单中显示


    for (x in json) { //遍历JSON格式的数组取元素, x代表下标
    var form = document.getElementById("myform");  
    var input = document.createElement("input");
    input.type="button";
    input.name=json[x].subjectId;
    input.id=json[x].id;
    input.value=json[x].content;
    input.className="btn1 close mh25";
    // input.onclick=function(){
    // votesajax(json[x].subjectId,json[x].id)
    // }
    form.appendChild(input);
    }

    // 绑定在追加在元苏的父级上面 就可以解决 追加input的点击事件失效 动态的添加input需要下面事件解决
    $("#myform").on("click","input",function(){
    votesajax(this.name,this.id);
    })

  • 相关阅读:
    MySQL数据丢失讨论
    分布式系统之Quorum (NRW)算法
    阿里巴巴-OS事业群-OS手机事业部-系统服务部门招聘Java开发工程师,有意者请进来
    EQueue
    ENode 2.0
    关于MySQL的在线扩容
    我收藏的技术知识图(每张都是大图)
    关于实现一个基于文件持久化的EventStore的核心构思
    Actor的原理
    OAuth 2.0 授权原理
  • 原文地址:https://www.cnblogs.com/xzcBY/p/9227956.html
Copyright © 2011-2022 走看看