jquery中input的change事件失效的解决办法
程序员文章站
2022-06-13 14:29:51
...
今天工作的时候 遇到了用jquery选择 input输入框, 监听input中的内容变化,然后将input中的内容获取到,赋值给另一个input输入框。
这种逻辑本来很简单的。代码如下:
$(".showProductInfo").append("<tr>" +"<td></td>" +"<td>批量设置</td>" +'<td><input type="number" class="product_info" name="setPrice" id="setPrice" onchange="setprice()" value="" /></td>' +'<td><input type="number" class="product_info" name="setStock" id="setStock" value="" /></td>' +"</tr>"); $('input[name=setStock]').on("change",function(){ console.log($('[name=setStock]').val()); $('[name=stock]').val($('#setStock').val()); });
我是尽量确保前面一段代码在后一段代码之前加载了,但是通过这种方式 选择不到 id=setStock的input输入框。
..............
十分钟后
我发现
$(".showProductInfo").append("<tr>" +"<td></td>" +"<td>批量设置</td>" +'<td><input type="number" class="product_info" name="setPrice" id="setPrice" onchange="setprice()" value="" /></td>' +'<td><input type="number" class="product_info" name="setStock" id="setStock" value="" /></td>' +"</tr>");
这段代码是在一个按钮出发的,
但是
$('input[name=setStock]').on("change",function(){ console.log($('[name=setStock]').val()); $('[name=stock]').val($('#setStock').val());}); 我是反在了script标签的尾部了。所以按钮没有点击之前,这段代码就已经执行了,此时上面的 $(".showProductInfo").append()还没有执行!!!
原因找到了!为了找到原因我还专门把第一个setprice()方法写到html中,变成html事件处理事件。 唉低级错误!!记录一下!共勉!
以上就是jquery中input的change事件失效的解决办法的详细内容,更多请关注其它相关文章!
推荐阅读
-
jquery取input的输入值(js事件绑定的方法)
-
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
-
解决angularJS中input标签的ng-change事件无效问题
-
jQuery中绑定事件bind() on() live() one()的异同
-
jquery取input的输入值(js事件绑定的方法)
-
jQuery中事件对象e的事件冒泡用法示例介绍
-
jquery中交替点击事件toggle方法的使用示例
-
jquery中checkbox全选失效的解决方法
-
jQuery中阻止冒泡事件的方法介绍
-
jQuery中对未来的元素绑定事件用bind、live or on