2014-12-29 2 views
1

У меня есть тумблер, реализованный в jQTouch. Я хочу установить положение переключателя в зависимости от выхода вызова ajax. Я называю jquery, как показано ниже. Но это не работает.ajax call in jqtouch

var request = $.ajax({ 
     url: "/cgi-bin/devStat.sh", 
     type: "POST", 
}); 
request.done(function(msg){ 
    alert(msg); 
    if(msg[0] === "1") 
     $('#myCheckbox1').prop("checked", true); 
}); 
request.fail(function(jqXHR, textStatus) { 
    alert("failed"); 
}); 

Но я ничего не получаю. Пожалуйста, помогите мне, как получить информацию от ajax-звонка.

ответ

0

Я думаю, ваша проблема в том, что вы увольняете запрос и получаете обратный вызов, прежде чем добавить к нему обработчик событий. Попробуйте использовать цепочку конструкций, например:

$.ajax({ 
    url: "/cgi-bin/devStat.sh", 
    type: "POST", 
}).done(function (msg) { 
    alert(msg); 
    if(msg[0] === "1") 
     $('#myCheckbox1').prop("checked", true); 
}).fail(function(jqXHR, textStatus) { 
    alert("failed"); 
}); 

Подробнее здесь:

Should I use .done() and .fail() for new jQuery AJAX code instead of success and error

и здесь:

deferred.fail()