ajax success - передача своих параметров
Как можно передать свои параметры в success-функцию ajax-запроса?
Так не получается - stage1_3 не запускается. var text = "text"; $.ajax( { async: false, type: "GET", url: "script.php", success: stage1_3(data,text), }); Так работает, только толку с этого. var text = "text"; $.ajax( { async: false, type: "GET", url: "script.php", success: stage1_3, }); Вопрос - как передать свои параметры в success-функцию? Кокретней - мне бы this туда пристроить. Понятно, что можно через глобальную переменную this передать, но хотелось бы разобраться. |
success: function(data) { alert ('Пришел ответ! Ща вызову нужную мне функцию с нужными мне агрументами!'); stage1_3(data, text); } |
Как то так можно:
$.ajax({ async: false, type: "GET", url: "script.php", success: stage1_3.bind(this), // или success: stage1_3.bind(this, data, text) если нужно какие то аргументы передавать // Ответ от сервера будет последний в списке аргументов, передаваемых в функцию. //То есть: data = arguments[arguments.length-1]; }); http://learn.javascript.ru/bind |
success: function(data) { alert ('Пришел ответ! Ща вызову нужную мне функцию с нужными мне агрументами!'); stage1_3(data, text); } А this таким образом передастся? walik, про bind забыл совсем. Спс. |
Короче, apply|call|bind . Причем первые два вызывают функцию немедленно.
|
Часовой пояс GMT +3, время: 21:25. |