这里我遇到了属性启动选择器的问题,我试图对多个字段进行验证,有动态ID,但没有成功。
下面是我到目前为止所尝试的内容。
我在So中看到了其他建议,但无法成功。
$("input[id^='product-unit-price-']").keydown(function (event) {
});
HTML
<input type="text" class="form-control pro-input valfields" id="product-unit-price-<?php echo $id;?>" name="unit_price[]" onblur="getTotalPrice(<?php echo $id;?>)" required="">
这里的id是动态的,如
产品单价-0
产品单价-1
产品单价-2
产品单价-3
依旧......
这里它仅用于第一个id(product-unit-price-0),但不用于休息。 它的所有东西。
建议我。
谢谢。答案 0 :(得分:3)
我认为您在使用$("input[id^='product-unit-price-']")
方法时使用val()
来引用处理程序内的元素,而$(this)
方法始终返回第一个元素的值,而不是触发事件的元素。在这种情况下,使用this
来引用$("input[id^='product-unit-price-']").keydown(function (event) {
// refer element by `$(this)`
})
引用事件触发元素的dom对象的元素。
else
FYI:为元素组提供公共类总是更好,并根据更好的方法进行选择。
答案 1 :(得分:0)
为什么不选择班级选择器?
if (textFromBox2 != textFromBox3)
因为从类选择器中,您可以选择相同类组元素的集合,并在集合的每个元素上应用事件。