![](/img/trans.png)
[英]Why does calling the JavaScript 'alert();' function crash the app in Windows Phone when developing for Apache Cordova?
[英]Page Navigation on Windows Phone 8 using HTML/JavaScript/Apache Cordova
我在使用Windows Phone 8和Apache Cordova 3.0进行页面导航时遇到一些问题。
我尝试了不同的方法来解决此问题,但仍然无法正常工作。
起初,我尝试使用表单导航到另一个页面。
<form action="CreateUser.html" method="get">
<input class="buttons" name="btnCreateUser" type="submit" value="Create User" />
</form>
当我单击按钮时,找不到页面。 CreateUser.html页面位于同一目录中。 如果我使用浏览器(Chrome / IE),则可以使用。
当我将操作更改为http://www.google.com时,两个选项(浏览器和电话)均起作用。
我还尝试使用JavaScript导航到另一个页面。 这是我的代码:
function get(httpUrl) {
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", httpUrl, true);
xmlHttp.send(null);
return xmlHttp.responseText;
}
现在,我使用按钮的onclick =“ get(” CreateUser“)”事件,但没有任何反应。 在浏览器和移动设备上。
对我唯一起作用的是window.location功能。 但似乎我无法以这种方式转换下一页上的信息。
在这两个页面之间导航并传递一些信息是否有任何机会?
还是我的代码有问题?
“ CreateUser.html页面”(如果我是正确的话)是您使用AJAX读取文件(页面)内容并将其粘贴到HTML中?
如果是,请阅读以下内容:
2.1。 跨域问题
在发出AJAX请求之前,您必须通过设置以下内容来允许跨域请求和核心支持:
jQuery.support.cors = true;
$.mobile.allowCrossDomainPages = true;
这些必须在特定的电话间隙功能“ DeviceReady”中设置,例如:
document.addEventListener('deviceready', function () {
jQuery.support.cors = true;
$.mobile.allowCrossDomainPages = true;
$.ajax({
url: "www/about.txt",
dataType: 'text'
}).done(function (result) {
alert(result);
});
});
2.2。 网址
制作面向Windows Phone 8的应用程序时,必须在AJAX请求中指定资源的完整路径,例如:url:“ www / about.txt”,
制作面向Windows Phone 8的应用程序时,不得在AJAX请求中指定资源的完整路径,例如:url:“ about.txt”,
2.3。 源文件扩展名
请小心使用未知的扩展名文件,例如模板扩展名* .tpl或类似文件。 有时AJAX不喜欢它们,我建议使用简单的* .txt和* .html扩展名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.