Jquery executing/triggering 不同事件的相同代码
Jquery executing/triggering same code on different events
我有自定义标签的点击事件功能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']").on('blur')
来扩展它吗
$("[calcdensity='yes']").on('blur').$("[densitybtn='yes']").on('click', function () {
});
我不确定在不同的事件上执行相同的代码
请问这个方法正确吗?或者有其他可用的方法吗?
正常定义函数(不是匿名函数)并将函数传递给事件侦听器
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']")
.
模糊时调用它
您可以使用 jQuery 的 .on()
method 绑定多个事件,方法是 space - 分隔事件参数。
$("[densitybtn='yes']").on('click blur', function() {
// actions to perform
})
您可以使用 jQuery 的 .add()
method.
将事件绑定到多个元素
$("[densitybtn='yes']").add("[calcdensity='yes']").on('click blur', function() {
// actions to perform
})
我有自定义标签的点击事件功能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']").on('blur')
来扩展它吗$("[calcdensity='yes']").on('blur').$("[densitybtn='yes']").on('click', function () {
});
我不确定在不同的事件上执行相同的代码
请问这个方法正确吗?或者有其他可用的方法吗?
正常定义函数(不是匿名函数)并将函数传递给事件侦听器
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']")
.
您可以使用 jQuery 的 .on()
method 绑定多个事件,方法是 space - 分隔事件参数。
$("[densitybtn='yes']").on('click blur', function() {
// actions to perform
})
您可以使用 jQuery 的 .add()
method.
$("[densitybtn='yes']").add("[calcdensity='yes']").on('click blur', function() {
// actions to perform
})