我已经阅读过有关此问题的信息,并已尝试在线尝试所有可能的解决方案,但没有任 这是我的HTML代码......
<!DOCTYPE html>
<head>
<link rel="stylesheet" href="jquery.mobile-1.2.0.min.css" />
<script src="jquery-1.8.2.min.js"></script>
<script>
$( document ).bind( "mobileinit", function() {
// Make your jQuery Mobile framework configuration changes here!
console.log("made cors changes");
//$.mobile.ajaxEnabled = true;
$.support.cors = true;
$.mobile.allowCrossDomainPages = true;
});
</script>
<script src="cordova-2.3.0.js"></script>
<script src="jquery.mobile-1.2.0.min.js"></script>
</head>
<body>
<div data-role="page" id="page1">
<div data-theme="a" data-role="header" data-position="fixed" >
<h4>
JLT
</h4>
</div>
<div data-role="content" >
<p>
Send data to server?
</p>
<a data-role="button" id="transportYES" data-inline="true">
Yes
</a>
<a data-role="button" id="transportNO" data-inline="true">
No
</a>
</div>
</div>
<script>
$( "#transportYES" ).bind( "click", function(event, ui) {
console.log('clicked');
$.ajax({
type: "GET",
url: "http://api.wordnik.com//v4/word.json/recant/definitions",
data: "includeRelated=false&includeTags=false&useCanonical=false&api_key=7741b711eec09c12e05070046d60da6b92e03750359859fde",
dataType: "json",
beforeSend:function(){
console.log('before sending');
},
success: function(msg){
alert( msg[0].word );
},
error: function(xhr, ajaxOptions, thrownError){
console.log(xhr);
alert( 'error' );
}
});
});
</script>
</body>
</html>
如果我从chrome运行此代码我从服务器获得响应,但当与phonegap打包时,它无法从Android模拟器工作..
我甚至在config.xml文件中允许所有域如下<access origin=".*"/>
。
长期以来一直坚持这个问题..请帮助.. !!!!
它可以在设备上运行,问题出在模拟器上......以前无法获得测试设备......可以节省这么多时间...... :)
答案 0 :(得分:0)
除非您将此代码放在jQuery和jQuery Mobile之间的文件中,否则您的mobileinit事件将起作用。
你必须做如下(只是一个例子)
<script src="js/external/jquery-1.8.2.min.js"></script>
<script src="js/configs.js"></script>
<script src="js/external/jquery.mobile-1.2.0.js"></script>
在你的configs.js里面放置你的mobileinit
$( document ).bind( "mobileinit", function() {
//your code
});