iteye_12067 2010-05-11 15:03
浏览 425
已采纳

Jquery循环添加事件问题

jquery异步加载获得json一个list对象.
写了个for循环
[code="java"][
function loadUsers(json) {
var obj = JSON.parse(json);
var list = obj.list;
for (var i = 0; i < list.length; i++) {
var id = list[i].id;
var truename = list[i].truename;
var type = list[i].type;

    $("#inserthtml").after("<tr><td>" + truename + "</td><td><input type='radio' id='" + id + "_A' name='radio_"
            + id + "' value='0'>未激活" + "<input type='radio' id='" + id
            + "_B' name='radio_" + id
            + "' value='1'>管理员<input type='radio' id='" + id
            + "_C' name='radio_" + id + "' value='2'>项目主管"
            + "<input type='radio' id='" + id + "_D' name='radio_" + id
            + "' value='3'>员工 </td><td><a href='/IdeaYapai_20100505/DeleteUserServlet?id=" + id
    + "' onclick='return confirm(\"确定删除?\");' >删除</a></td><td><input type='button' id='updatetype" + id
            + "' value='更新权限'/></td></tr>")


switch (type) {
        case 0 :
            $("#" + id + "_A").attr("checked", "true");
            break;
        case 1 :
            $("#" + id + "_B").attr("checked", "true");
            break;
        case 2 :
            $("#" + id + "_C").attr("checked", "true");
            break;
        case 3 :
            $("#" + id + "_D").attr("checked", "true");
            break;
    }

    $("#updatetype" + id).click(function() {
        $.ajax({
                    url : 'UpdateTypeServlet',
                    cache : false,
                    type : 'post',
                    dataType : 'html',
                    data : 'userid='
                            + id
                            + '&newtype='
                            + $("input[name=radio_" + id + "][checked]")
                                    .val()

                });
    });
}

}
[/code]

问题是:每添加一行

就给里的button添加一个事件,但是这样的事件获得的id和newtype都是最后一个元素的.
请教如何给每一个按钮添加动作事件才能使获得的ID和newtype是目标元素的.
  • 写回答

7条回答 默认 最新

  • qwe_rt 2010-05-11 15:33
    关注

    补充一下:在button按钮的前面添加一个隐藏域。

    [code="html"]


    "+
    "<input type='button' id='updatetype" + id

    + "' value='更新权限' onclick='updateType()'/>

    [/code]

    ps:用记事本手写代码,可能存在某些语法错误

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)