给html标签中的onclick事件传递变量值,传值过程中值产生变化

需求:删除表格中的一行,点击删除,会删除当前的一行记录,

思路:获取到当前行的主键id值,因为然后根据主键删除。

实现:每个td上绑定onclick事件,然后给onclick事件里面绑定id值

不正确代码如下:

for (var i = 0; i < list.length-1; i++) {
    var user = list[i].split("|");
    user_info ="<tr>"
        +" <td>"+"<input type=\"checkbox\" />"+"</td>"
        +" <td>"+user[2]+"</td>"
        +" <td>"+user[1]+"</td>"
        +"<td id='editor'>"+"<img src=\"../imgs/set.png\">"+"</td>"
        +"<td οnclick=\"deleteUser("+user[0]+" )\">"+"<img src=\"../imgs/delete.png\">"+"</td>"
        +"</tr>"+user[0];
    $("#user_list").append(user_info);
}

然后用一个函数接收

function deleteUser(flag) {
    alert(flag);
    var user_id=flag;
    var paras = "user_id=" + user_id;
    var status = new Array();
    var result = function () {
        if(status[0] == "ok"){
            alert("注销用户成功");
            $("#user_list  tr:not(:first)").empty("");
            userList();
        }else{
            alert('注销用户失败');
        }
        }
        console.log(paras);
    getFromWS("user/deleteUsers.template",paras,status,result);
}

其实这样写是有效果的,能接受到传过来的值,

比如上图这样,值传过来了,但是问题是值变了!变了!变了!重要的问题说三遍,一开始测试老是删除成功,但是页面没有变化,我就奇了怪了,但先在值变了,就更纳闷了,这么一点的空间距离你是肿么了。后来网上查了一波,发现好多把值写成字符串的形式,我就试了下,发现是对的。这个地方的原理有点不太明白。但是结果出来了还是倍感欣慰的。这个地方还有一个重要的问题是单双引号的问题,巨坑。好了,不多说了,得去赶进度了。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值