0

我正在构建一个 PhoneGap 应用程序,用户按下按钮,然后将数据发送到服务器。在成功处理程序上,我有一个新功能,它通过提示框向用户询问一些问题,然后将它们发送回服务器。所以我需要让提示框出现,只要条件“status=ok”为真。

我不知道提示框要出现多少次,可以是1到10次,所以我想我需要做一个循环,但我该怎么做呢?

这是我现在一直在使用的代码:

function UpdateRecord(update_id) 
{ var id = getUrlVars()["id"]; 
jQuery.ajax({ type: "POST", 
url: serviceURL + "update.php", 
data: 'id='+id , 
cache: false, 
success: function(data) {
        console.log(data)
        if(data.key[0].status == "ok"){
            var reply = prompt(data.key[0].QUESTION, "");
                    jQuery.ajax({ type: "POST", 
                    url: serviceURL + "question.php", 
                    data: 'id='+id+'&reply='+reply , 
                    cache: false, 
                    success: function(data) {
                        window.location = "page.html" }
             } else {
                  window.location = "page.html" 
             }
}
});
}
4

1 回答 1

0

我认为你之后的事情是将 AJAX 调用的响应转移到一个方法中AskQuestion(或者你想调用的任何方法)。这个函数会提示并查询答案是否正确,并将它们重定向到另一个页面:

function AskQuestion(data)
{
   var id = getUrlVars()["id"];
   console.log(data);
   if(data.key[0].status == "ok") {
      var reply = prompt(data.key[0].QUESTION, "");
      jQuery.ajax({ type: "POST",
                    url: serviceURL + "question.php",
                    data: 'id='+id+'&reply='+reply,
                    cache: false,
                    success: AskQuestion});
   } else {
      window.location = "page.html";
   }
}

function UpdateRecord(update_id) 
{
   var id = getUrlVars()["id"];
   jQuery.ajax({ type: "POST",
                 url: serviceURL + "update.php",
                 data: 'id='+id,
                 cache: false,
                 success: AskQuestion});
}
于 2012-07-04T06:20:26.830 回答