Javascript Jquery在不同事件上执行/触发相同代码
我在单击自定义标记的事件时具有此功能Javascript Jquery在不同事件上执行/触发相同代码,javascript,jquery,jquery-trigger,Javascript,Jquery,Jquery Trigger,我在单击自定义标记的事件时具有此功能densitybtn='yes' $("[densitybtn='yes']").on('click', function () { var no_of_people = 0; //calcdensity $("[calcdensity='yes']").each(function () { no_of_people = parseInt($(this).val()) + no_of_people; });
densitybtn='yes'
$("[densitybtn='yes']").on('click', function () {
var no_of_people = 0;
//calcdensity
$("[calcdensity='yes']").each(function () {
no_of_people = parseInt($(this).val()) + no_of_people;
});
var total_density = parseInt(carpetArea) / parseInt(no_of_people);
$("#densityVal").html(Myval);
});
我可以通过将代码扩展到$(“[calcdensity='yes']”)来扩展相同的代码吗
我不确定是否在不同的事件上执行相同的代码
让我知道这个方法正确吗?或者是否有其他方法可用?正常定义函数(不是匿名函数)并将函数传递给事件侦听器
function listener() {
var no_of_people = 0;
//calcdensity
$("[calcdensity='yes']").each( function() {
no_of_people = parseInt($(this).val())+no_of_people;
});
var total_density = parseInt(carpetArea)/parseInt(no_of_people);
$("#densityVal").html(Myval);
}
$("[densitybtn='yes']").on('click', listener);
$("[calcdensity='yes']").on('blur', listener);
通常定义函数(不是匿名函数)并将函数传递给事件侦听器
function listener() {
var no_of_people = 0;
//calcdensity
$("[calcdensity='yes']").each( function() {
no_of_people = parseInt($(this).val())+no_of_people;
});
var total_density = parseInt(carpetArea)/parseInt(no_of_people);
$("#densityVal").html(Myval);
}
$("[densitybtn='yes']").on('click', listener);
$("[calcdensity='yes']").on('blur', listener);
不,那不是一个好的练习。
相反,您可以为第二个目的编写一个函数,并在模糊的
$(“[calcdensity='yes']”)上调用它。
相反,您可以为第二个意图编写一个函数,并在模糊的$(“[calcdensity='yes']”)上调用它
您可以使用jQuery的按空格分隔事件参数来绑定多个事件
$("[densitybtn='yes']").on('click blur', function() {
// actions to perform
})
可以使用jQuery的函数将事件绑定到多个元素
可以使用jQuery的按空格分隔事件参数来绑定多个事件
$("[densitybtn='yes']").on('click blur', function() {
// actions to perform
})
可以使用jQuery的函数将事件绑定到多个元素
第二次呼叫应为开启('blur')。第二次呼叫应为开启('blur')。我必须管理[calcdensity='yes']和[densitybtn='yes']。我们如何添加[calcdensity='yes']?对不起,我误解了这个问题。您想对[calcdensity='yes']和[densitybtn='yes']同时运行“单击”和“模糊”功能,还是只对第一个运行“单击”,对第二个运行“模糊”功能?我必须管理[calcdensity='yes']和[densitybtn='yes']。我们如何添加[calcdensity='yes']?对不起,我误解了这个问题。您想对[calcdensity='yes']和[densitybtn='yes']同时运行“单击”和“模糊”功能,还是只对第一个运行“单击”,对第二个运行“模糊”功能?