Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 即使如此,数据也不会改变_Javascript_Jquery - Fatal编程技术网

Javascript 即使如此,数据也不会改变

Javascript 即使如此,数据也不会改变,javascript,jquery,Javascript,Jquery,这是我自己的实践,它工作得很好,我期待。但是当我使用第8行(对演示代码的注释)而不是第7行时,输入的文本值都变为0,这与我给出的演示结果不同 我看了jquery网站,它只给了我这个 描述:绑定当前执行处理程序时传递给事件方法的可选数据对象 我认为使用第8行或第7行的结果应该是相同的,因为我被指定给count object,但事实并非如此。有人能给我解释一下这个问题吗。顺便说一句,如果有人能重构我的代码,那会更好,谢谢 这是我的密码 var i = 0; $("#aa").on("click",

这是我自己的实践,它工作得很好,我期待。但是当我使用第8行(对演示代码的注释)而不是第7行时,输入的文本值都变为0,这与我给出的演示结果不同

我看了jquery网站,它只给了我这个

描述:绑定当前执行处理程序时传递给事件方法的可选数据对象

我认为使用第8行或第7行的结果应该是相同的,因为我被指定给count object,但事实并非如此。有人能给我解释一下这个问题吗。顺便说一句,如果有人能重构我的代码,那会更好,谢谢

这是我的密码

var i = 0;
$("#aa").on("click", {
    count : i       
}, 
function(event) {
    var div = $('<div/>');
    var input = $('<input />').attr("value", event.data.count);
    event.data.count++;
    //i++;
        var bt = $('<input />').attr({
            type : "button",
            value : "remove",
        });
        div.append(input);
        div.append(bt);

        var index = $("div").length;
        if (index == 0) {
            $("#aa").after(div);
        } else {
            $("div").last().after(div);
        }

        bt.on('click', function(event) {
            $(this).parent().remove();
        });
});
var i=0;
$(#aa”)。点击{
伯爵:我
}, 
功能(事件){
var div=$('');
var输入=$('').attr(“值”,event.data.count);
event.data.count++;
//i++;
变量bt=$('').attr({
键入:“按钮”,
值:“删除”,
});
div.append(输入);
附加分部(bt);
var指数=$(“div”).长度;
如果(索引==0){
元(“#aa”)。在(div)之后;
}否则{
$(“div”).last()在(div)之后;
}
bt.on('点击',功能(事件){
$(this.parent().remove();
});
});
这是本节的重要内容。因此,在使用
click
事件绑定函数期间,只会创建一次对象。因此,更改
i
不会更改
event.data
的值

当你这样做的时候

event.data.count++;
实际上,您正在修改对象,对象的状态将被保留。这就是它起作用的原因

event.data.count++;