[英]phonegap ajax call getting error '$ is not defined'
我在我的Phonegap应用程序中发出了一个AJAX请求。 代码是:
function remoteCall()
{
alert("Remote call func called");
try
{
$.ajax({
url: 'http://192.168.1.200/testing/testConn.php',
contentType: "application/json; charset=utf-8",
dataType:"json",
success: function(data)
{
if(data == '')
alert("No data received from server");
else
alert("Data received from server = "+data.postcode);
},
error: function(jqXHR, textStatus, errorThrown)
{
console.log(textStatus);
alert('FAIL !!!');
},
});
}//end of try().
catch(e)
{
alert("error = "+e.message);
}
}//END OF FUNC remoteCall.
我还在<head>
添加了以下行以避免jQuery冲突。
<script>jQuery.noConflict();</script>
我的服务器端文件是:
<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: X-Requested-With");
$retArray = array();
$retArray['postcode']= 'm14';
$retArray['brand']= '1';
$retArray['product_type']= '1';
$jsondata = json_encode($retArray);
return $jsondata;
?>
我收到第一个警报消息,但后来我收到错误,“$ is not undefined”。 我不知道如何解决这个问题; 有人可以帮忙吗?
我能够克服“$ is undefined”的错误,现在我没有得到任何错误,而且我没有得到任何输出......
确保在添加包含代码的js文件之前添加jquery文件。
<script>jQuery.noConflict();</script>
意味着你必须将jQuery对象称为jQuery
而不是$
。 将引用从$
更改为jQuery
,它应该可以工作。
我解决了我的问题...... :)
以下行解决了我的$和jQuery问题
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.7.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
(感谢Ali和cfs :))
在服务器文件中我改变了返回echo
<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: X-Requested-With");
$retArray = array();
$retArray["postcode"]= "m14";
$retArray["brand"]= "1";
$retArray["product_type"]= "1";
$jsondata = json_encode($retArray);
echo $jsondata;
?>
现在我能够获取服务器详细信息。
感谢所有的回复.... :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.