如何简化使用不同的jQuery事件但具有相同功能的两个输入



我有两个不同事件的输入,但它们运行相同的函数。我的第一个尝试是:

var inputa = $("input[name='inputa']");
var inputb = $("input[name='inputb']");
inputa.on('change keyup blur', function()
{
    // Logic
});
inputb.on('blur', function()
{
    // Logic
});

它工作,但我认为这是一种浪费,也许有一种方法来简化它。我做了一些研究,发现了这个:

inputa.on('change keyup blur', myFunction());
inputb.on('blur', myFunction());
function myFunction()
{
    // Logic
}

我将逻辑放入函数中,并将其放在各自的事件上。但这并没有奏效。有人能帮我解决这个问题吗?

问题是当你有()在:

inputb.on('blur', myFunction());

你正在立即调用该函数,而你想要的是传递该函数作为引用:

inputb.on('blur', myFunction);

相关内容

  • 没有找到相关文章