Javascript 如何对两个不同的jQuery事件使用相同的代码而不重复?
我必须在两个不同的事件上调用相同的函数,如下例所示:Javascript 如何对两个不同的jQuery事件使用相同的代码而不重复?,javascript,jquery,Javascript,Jquery,我必须在两个不同的事件上调用相同的函数,如下例所示: // calling a function on keyup $('#textarea').keyup(function() { var text_length = $('#textarea').val().length; var text_remaining = text_max - text_length; $('#textarea_feedback').html(text_remaining + ' cha
// calling a function on keyup
$('#textarea').keyup(function() {
var text_length = $('#textarea').val().length;
var text_remaining = text_max - text_length;
$('#textarea_feedback').html(text_remaining + ' characters remaining');
});
// calling same function on click
$('#cancel').click(function() {
var text_length = $('#textarea').val().length;
var text_remaining = text_max - text_length;
$('#textarea_feedback').html(text_remaining + ' characters remaining');
});
请注意,上面的函数在这两种情况下做相同的事情,我只需要在不同的条件下调用该函数
现在我的问题是,我是否可以在同一行中设置这两个事件,以避免设置函数两次?只需分别声明函数,然后在两个事件中使用它
var func_event = function() {
var text_length = $('#textarea').val().length;
var text_remaining = text_max - text_length;
$('#textarea_feedback').html(text_remaining + ' characters remaining');
};
$('#textarea').keyup(func_event);
$('#cancel').click(func_event);
只需分别声明函数,然后在两个事件中使用它
var func_event = function() {
var text_length = $('#textarea').val().length;
var text_remaining = text_max - text_length;
$('#textarea_feedback').html(text_remaining + ' characters remaining');
};
$('#textarea').keyup(func_event);
$('#cancel').click(func_event);
您可以使用以下函数:
// calling a function on keyup
$('#textarea').keyup(function() {
exampleFunction();
});
// calling same function on click
$('#cancel').click(function() {
exampleFunction();
});
function exampleFunction(){
var text_length = $('#textarea').val().length;
var text_remaining = text_max - text_length;
$('#textarea_feedback').html(text_remaining + ' characters remaining');
}
您可以使用以下函数:
// calling a function on keyup
$('#textarea').keyup(function() {
exampleFunction();
});
// calling same function on click
$('#cancel').click(function() {
exampleFunction();
});
function exampleFunction(){
var text_length = $('#textarea').val().length;
var text_remaining = text_max - text_length;
$('#textarea_feedback').html(text_remaining + ' characters remaining');
}
是的,这可以作为一种替代方法,但是我可以像我们在php中的if条件中所做的那样,如果其中一个条件为true,则执行操作。类似于php中的if条件?。。。你能提供这样的解决方案吗?plzz?@user3172176:不,你不能。。okkk非常感谢您的友好回复。。我将使用您提供的解决方案……:)是的,这可以作为一种替代方法,但是我可以像我们在php中的if条件中所做的那样,如果其中一个条件为true,则执行操作。类似于php中的if条件?。。。你能提供这样的解决方案吗?plzz?@user3172176:不,你不能。。okkk非常感谢您的友好回复。。我将使用您提供的解决方案……:)