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, время: 19:25. |