可能是一个非常简单的问题。我有两个相同的jquerys,一个字段更新时触发一个,另一个更新时触发一个。我可以将两者结合起来,如果它发生变化,或者变化是否有功能?
$(document).ready(function(){
$("#premium").change(function(){
var sum = 0;
$("#premium").each(function(){
sum += +$(this).val();
});
var ff_budget = $("#ff_budget").val();
var premium_difference = ff_budget-sum;
$("#total_premium").html("£ "+sum);
$("#premium_difference").html("£ "+premium_difference);
});
$( "#ff_budget" ).change(function() {
var sum = 0;
$("#premium").each(function(){
sum += +$(this).val();
});
var ff_budget = $("#ff_budget").val();
var premium_difference = ff_budget-sum;
$("#total_premium").html("£ "+sum);
$("#premium_difference").html("£ "+premium_difference);
});
});
答案 0 :(得分:1)
在jQuery中,您可以使用以逗号分隔的多个选择器。这应该适合你:
$(document).ready(function(){
$("#premium, #ff_budget").change(function(){
var sum = 0;
$("#premium").each(function(){
sum += +$(this).val();
});
var ff_budget = $("#ff_budget").val();
var premium_difference = ff_budget-sum;
$("#total_premium").html("£ "+sum);
$("#premium_difference").html("£ "+premium_difference);
});
});
答案 1 :(得分:0)
当然这些可以合并。我看到两个事件监听器的代码都是相同的。
您可以使用jQuery's multiple selector来获得所需的结果:
$(document).ready(function(){
$("#premium, #ff_budget").change(function(){
var sum = 0;
$("#premium").each(function(){
sum += +$(this).val();
});
var ff_budget = $("#ff_budget").val();
var premium_difference = ff_budget-sum;
$("#total_premium").html("£ "+sum);
$("#premium_difference").html("£ "+premium_difference);
});
});