2015-12-07 3 views
0

У меня есть input, и приложил к нему change. В этом событии изменения я вызвал функцию. Вот код:Функция вызова с аргументом в событии

textInput.change(myFunction); 

Это работает нормально. Но я хочу передать ему параметр. myFunction('arg') Когда я это делаю, функция вызывает себя сразу, а не когда происходит событие изменения.

Как я могу вызвать функцию для события change с аргументами?

ответ

0

Во-первых, это onchange.

Либо привязать функцию:

textInput.onchange = myFunction.bind(this, 'a'); 

Или, если вы не хотите явно использовать bind, просто поставить вызов функции в функции onchange вызовы:

textInput.onchange = function() { 
    myFunction('a'); 
}; 
+0

Единственное различие было бы моим собственным предпочтением? – Horay

+1

Это право @ Хорай. – Andy

1
textInput.change(myFunction.bind(textInput, 'arg')); 

function myFunction(arg1, event) {} 
-1

Я бы просто передать анонимную функцию следующим образом:

textInput.change(function(){ 
    myFunction('arg'); 
}); 
+0

Пожалуйста, объясняющие downvote .... – Horay

+1

Пожалуйста, объясните причину downvote, чтобы я мог научиться отвечать на вопросы лучше в будущем. –

Смежные вопросы