Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.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 Id选择器不适用于输入类型提交_Javascript_Jquery - Fatal编程技术网

Javascript Id选择器不适用于输入类型提交

Javascript Id选择器不适用于输入类型提交,javascript,jquery,Javascript,Jquery,当我单击total按钮时,我试图读取一个表,该按钮是在ajax调用中创建的,我使用id属性和输入类型提交选择器尝试了table,但我无法读取该按钮,但当我尝试在按钮上调用javascript函数时,调用了javascript函数,有人能解释一下这一点吗?我应该如何使用jquery选择器阅读 $.ajax({ type:'POST', url:'/pos/addproduct', dataType: "json", data:

当我单击total按钮时,我试图读取一个表,该按钮是在ajax调用中创建的,我使用id属性和输入类型提交选择器尝试了table,但我无法读取该按钮,但当我尝试在按钮上调用javascript函数时,调用了javascript函数,有人能解释一下这一点吗?我应该如何使用jquery选择器阅读

$.ajax({
        type:'POST',    
        url:'/pos/addproduct',
        dataType: "json",
        data:JSON.stringify(order),
        contentType: "application/json; charset=utf-8",
        success:
            function(data){
             i++;
             console.log(i);
            $.each(data,function(index,value){
                var temp = "qty" + data[index].barcodeid.trim();
                var qtyitm=$("#"+temp);

                if(qtyitm.length != 0){
                    qtyitm.html(data[index].qty);
                    //("#price"+(data[index].barcodeid.trim())).html(data[index].price);
                    temp = "price" + data[index].barcodeid.trim();
                    qtyitm = $("#"+temp);
                    qtyitm.html(data[index].price);
                }
                else{
                    var row=$("<tr><td>"+data[index].oid+"</td>"+"<td>"+data[index].pname.trim()+
                            "</td>"+
                            "<td id=\"qty"+data[index].barcodeid.trim()+"\">"+data[index].qty+"</td>"+
                            "<td id=\"price"+data[index].barcodeid.trim()+"\">"+data[index].price+"</td>"+
                            "<td>"
                            +data[index].barcodeid.trim()+"</td></tr>"

                    );
                    $("#firstrow").after(row).removeClass("hidden");
                    }

            })
            if(i==1){
            var row1=$("<tr><td>"+'<input type="submit" id="calculateTotal" value="Total">'+"</td></tr>");
            $("#order tbody").append(row1);
            }
        }

})
});
$('input[id="calculateTotal"]').click(function(event){
    alert("hello");
})
$.ajax({
类型:'POST',
url:“/pos/addproduct”,
数据类型:“json”,
数据:JSON.stringify(order),
contentType:“应用程序/json;字符集=utf-8”,
成功:
功能(数据){
i++;
控制台日志(i);
$.each(数据、函数(索引、值){
var temp=“qty”+数据[索引].barcodeid.trim();
变量qtyitm=$(“#”+temp);
如果(qtyitm.length!=0){
qtyitm.html(数据[索引].qty);
//(“#price”+(数据[index].barcodeid.trim()).html(数据[index].price);
temp=“price”+数据[index].barcodeid.trim();
qtyitm=$(“#”+温度);
html(数据[索引].price);
}
否则{
var row=$(“”+数据[索引].oid+“”+“”+数据[索引].pname.trim()+
""+
“”+数据[索引]。数量+“”+
“”+数据[索引]。价格+“”+
""
+数据[索引].barcodeid.trim()+“”
);
$(“#第一行”)。在(第行)之后。删除类(“隐藏”);
}
})
如果(i==1){
var row1=$(“”+“”+“”);
$(“#订单正文”)。追加(第1行);
}
}
})
});
$('input[id=“calculateTotal”]”)。单击(函数(事件){
警惕(“你好”);
})

由于提交按钮
#calculateTotal
是通过js代码在中动态添加的:

$("<tr><td>"+'<input type="submit" id="calculateTotal" value="Total">'+"</td></tr>");

希望这有帮助。

因为提交按钮
#calculateTotal
是通过js代码在以下位置动态添加的:

$("<tr><td>"+'<input type="submit" id="calculateTotal" value="Total">'+"</td></tr>");

希望这有帮助。

浏览器在加载页面时解析javascript代码,并在初始加载时将事件侦听器附加到DOM元素(在这种情况下,按钮不会退出,因为您只需将其附加到现有DOM树[因此没有事件绑定])

解决方案是使用
$('document')。在('event'、'selector'、'callback')
上使用代码:

var row1=$("<tr><td>"+'<input type="submit" id="calculateTotal" value="Total">'+"</td></tr>");
            $("#order tbody").append(row1);
var row1=$(“”+“”+“”);
$(“#订单正文”)。追加(第1行);
在Js中:

$('document')。在('click','calculateTotal',函数()上{
//在这里做你的事
});


希望有帮助…:D

浏览器在加载页面时解析javascript代码,并在初始加载时将事件侦听器附加到DOM元素(在这种情况下,按钮不会退出,因为您只需将其附加到现有DOM树[因此没有事件绑定])

解决方案是使用
$('document')。在('event'、'selector'、'callback')
上使用代码:

var row1=$("<tr><td>"+'<input type="submit" id="calculateTotal" value="Total">'+"</td></tr>");
            $("#order tbody").append(row1);
var row1=$(“”+“”+“”);
$(“#订单正文”)。追加(第1行);
在Js中:

$('document')。在('click','calculateTotal',函数()上{
//在这里做你的事
});


希望对您有所帮助…:D

javascript解析方法是原因…当您链接代码时,请在加载页面时使用js浏览器解析它。在这种情况下,动态添加的按钮不会退出,并且没有事件侦听器绑定到它。。。解决方案是使用$(document.ready()和使用$('document')。在('click','id/class selector',function(){//do your stuff here})上;javascript解析方法是原因…当你链接你的代码时说js当页面加载浏览器解析它在这种情况下,你的动态添加的按钮不存在,没有事件监听器绑定到它。。。解决方案是使用$(document.ready()和使用$('document')。在('click','id/class selector',function(){//do your stuff here})上;