Передать функцию в качестве параметра в JQuery? - PullRequest
7 голосов
/ 18 апреля 2010

Я бы хотел передать функции jQuery обычную функцию вместо обычной анонимной функции, но я не уверен, как это можно сделать.

Вместо этого:

function setVersion(feature) {
      $.post("some.php", { abc:"abc" },
      function(data){
         // do something here
      }, "json");
}

Я хотел бы сделать это:

function foo(data){
   // do something here
}

function setVersion(feature) {
      $.post("some.php", { abc:"abc" }, foo, "json");
}

Спасибо.

Ответы [ 3 ]

12 голосов
/ 18 апреля 2010

Да, уже работает. Но вы хотите, чтобы это выглядело примерно так:

function setVersion(feature, myFunction) {
      $.post("some.php", { abc:"abc" }, myFunction, "json");
}
setVersion(blah, foo);
2 голосов
/ 18 апреля 2010

Должен работать просто отлично.

Я считаю, что jQuery на самом деле предназначен для использования обычной функции, вызываемой по имени. Использование анонимной функции является просто заменой именованной функции, которая в противном случае была бы передана.

1 голос
/ 18 апреля 2010

Да, именно так вы и делаете.

...