我想在我的身体区域添加一段JavaScript(jquery)代码。假设代码是
$(".count_input").on("change",function(){
alert("hi");
});
但它并没有说出来。当我对输入进行更改时,我希望此代码能够提醒我。
代码语法和算法都是正确的,因为当我用chrome控制台植入它时它会起作用;
我必须补充说我的脚本标记是这样的:
<script>
$(document).ready(function() {
/**********************
this part doesn't work
**********************/
$(".count_input").on("change",function(){
alert("hi");
});
/*************************************************************/
/**************
this part works
**************/
$.get("../files/cart.php",{action:'main_cart'},function(data) {
data = data.split("dbseperatordb");
$(".cart_count").html("");
$(".main_cart_html").html("");
$("#total_price").html("0");
var main_cart_html = data[0];
var total_price = data[1];
$(".main_cart_html").html(main_cart_html);
$(".total_price").html(total_price);
});
/****************************************************************/
})
</script>
这是HTML
<div class="item">
<div class="cart_img pull-left width-100 padding-10 text-left">
<img src="../products/h1/images/1.jpg" alt="" width="80">
</div>
<a href="../pages/single-item.php?id=1" class="product_name">
<span>عسل</span>
<small>کمی توضیحات<br>معمولاً طراحان گرافیک برای صفحه‌آرایی�</small>
</a>
<a href="#" class="remove_item">
<i class="fa fa-times"></i>
</a>
<div class="total_price">342000</div>
<div class="qty">
<input type="number" value="4" class="count_input" id="1input_count" maxlength="3" max="999" min="1">
× 90000 ريال</div>
<div class="clearfix">
</div>
</div>
答案 0 :(得分:2)
包含那些输入的一些html元素由$ .get()代码
收集
这就是您的代码所做的事情:
.count_input
元素.count_input
元素由于您在步骤3中添加的元素在步骤1中不存在,因此它们永远不会绑定到它们的事件处理程序。
将绑定事件处理程序的代码移动到传递给$.get
的函数的末尾
答案 1 :(得分:0)
我希望此代码在我输入内容时提醒我。
在用户提交输入元素值之前,不会触发change
事件。用户必须首先输入新值,然后通过Tab键到另一个表单元素或单击输入元素外部来模糊输入元素,以实际提交更改。直到那时change
事件才会触发。
您可以使用input
事件,当输入元素的值发生更改时,会同步触发该事件。
旧版浏览器(IE&lt; 9)不支持input
事件。要支持那些,您可能需要考虑倾听keyup
/ keydown
。