只要条件为真,运行Javascript函数

时间:2012-07-04 05:46:30

标签: javascript loops while-loop

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

我不知道提示框必须出现多少次,它可以是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" 
             }
}
});
}

1 个答案:

答案 0 :(得分: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});
}