我在ASP页中有两个输入:
<input type="text" class="arrivalDate form inp compare_prices_fields datepicker total_price_fields price_list_fields allRows" id="calc_arrdate_group_0" value="" style="width: 95px" rbo_id="ArrivalDate" />
<input type="text" class="departureDate form inp compare_prices_fields datepicker total_price_fields price_list_fields allRows" id="calc_depdate_group_0" value="" style="width: 95px" rbo_id="DepartureDate" />
在我的ASP页面上,我有以下JavaScript代码:
$(document).ready(function () {
.
.
$(".compare_prices_fields").change(function () {
comparePrices();
});
当我在第一个输入中更改文本时,它会激活该功能,但在我更改第二个输入时不会发生。
我尝试将“ compare_prices_fields”类添加到其他元素中,除了我需要的输入之外,其他所有元素都可以正常工作。
有人可以帮我修改我的代码吗?
答案 0 :(得分:0)
当通过jQuery获取元素时使用这种方法时,您只会将处理程序附加到第一个元素,如果您确实想保持这种方式,那么请确保将此处理程序附加到所有元素:
$(".captureComment").each(() => {
this.addEventListener("change", comparePrices);
});
仅是一个建议,您可以将处理程序直接附加到每个输入上:
<input ... onchange="comparePrices()" />
答案 1 :(得分:0)
我找到了解决此问题的方法。我刚刚添加了代码onblur =“ comparePrices();”到有问题的元素,现在可以使用了。