Phonegap MobileJQuery AJAX在调试时发布两次

时间:2012-04-12 07:46:02

标签: jquery-mobile cordova

希望有一些可以帮助!, 在调试手机应用程序连接到它的WCF服务时,似乎发布了两次。

当应用程序正常运行时,没有断点等一切正常,我只收到1。 在我看来,如果几秒钟后服务器没有返回任何响应,则ajax会重新发布。

我需要确认这个投掷wireshark,但只是想知道是否还有其他人来过这个。

$.ajax({
                type: "POST",
                url: ServicePATH ,
                data: JSON.stringify({ objs: arrayobj, parm2: var2, parm3: var3, parm4: 1 }),
                contentType: "application/json",
                dataType: "json",
                success: function (data, textStatus, jqXHR) {
                    CallonSuccess(data);
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    console.log('error ' + textStatus);
                    console.log('XMLHttpRequest ' + XMLHttpRequest);
                    var str = '';
                    for (prop in XMLHttpRequest) {
                        str += "prop " + prop + " value :" + XMLHttpRequest[prop] + "\n"; //Concate prop and its value from object
                    }
                    console.log(str);
                    console.log('errorThrown ' + errorThrown);
                    console.log('passing ' + JSON.stringify({ objs: arrayobj, parm2: var2, parm3: var3, parm4: 1 }));
                }
            }).done(function () { console.log('Finished ajax'); }); 

感谢Lmac

1 个答案:

答案 0 :(得分:2)

也许没有解决方案(请参阅下面的更新),但这里的行为相同。

如果没有jquery Mobile框架,一切正常,嵌入框架会第二次获取我的json文件。在Chrome的控制台中,您可以在网络下看到它:GET状态200和GET状态304(未修改)。

我可以选择抛出jQuery Mobile,我肯定会。但是也有兴趣知道那里发生了什么。

更新: 我在$(document).ready(function(){})中有xmlhttprequest;似乎jQuery和jQuery Mobile都对此做出了反应。

如果我将脚本放在站点的末尾并在ready-method之外创建我的xmlhttprequest,它只会获取我的json文件一次。