javascript事件执行多次

最开始定义了一个空的数组,然后添加了一个点击事件获取值然后往这个数组里面添加

//定义一个空的数组
var dataPrint = [];

//事件
$('tbody :checkbox').click(function(){

    var order_number = $(this).parent('td').siblings().eq(0).text();
    if($(this).prop("checked")){
        dataPrint.push(parseInt(order_number));
        console.log(dataPrint);    
    }

});

勾选第一个的checkbox的时候,获取到了值,也添加到数组里面去了,
点击第二checkbox,也获取到了值,添加到了数组里面,但是有两个数组,怎么解决这个问题
只生成一个数组

图中勾选了三个checkbox生成了三个数组,图片描述

阅读 3.4k
5 个回答

这就是一个数组啊,只是显示是的打印时的状态,要不你点一下这三角
clipboard.png
可以看到里面的值时一样的。

你这个应该不是三个数组吧,而是一个数组在不同时刻console.log了三次吧。

//事件
$('tbody :checkbox').click(function(){

    var order_number = $(this).parent('td').siblings().eq(0).text();
    if($(this).prop("checked")){
        var dataPrint = [];
        dataPrint.push(parseInt(order_number));
        console.log(dataPrint);    
    }

});

一个数组在不同时刻console.log了三次

勾选了三次当然会log三次了,log的值不一样是因为时刻不同而已,最后的数组应该是一样的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题