jQueryMobile的几个问题解决办法

58 篇文章 0 订阅
51 篇文章 0 订阅

这两天在学习jQueryMobile过程中,遇到一些问题。把解决的方法记一下,省得下次再到处找.

 

 

1、使用$.getJSON总是不触发callback函数的问题:

$.getJSON调用的方式如下:

客户端:

$.getJSON(serviceURL + 'getreports.php?id='+id, function (data) {alert("调用成功.");});

 服务端:

echo '{"items":'. json_encode($employees) .'}'; 

 

可是测试时却未触发回调函数,用工具监控到服务端已返回的json结果,该结果用工具查看,是正确的json格式。

后来通过在脚本中设置错误捕获:

$.ajaxSetup({"error":function(XMLHttpRequest,textStatus, errorThrown) {   
  alert(textStatus);
  alert(errorThrown);
  alert(XMLHttpRequest.responseText);
}});

 得知出错原因是parseerror,即jQuery无法解析服务器返回的json内容。

 

后来改成JSONP的方式:

客户端:

$.getJSON(serviceURL + 'getreports.php?id='+id+"&format=json&callback=?", function (data) {alert("调用成功");});

 服务端:

echo $_GET['callback'] . '({"items":'. json_encode($employees) .'})'; 

 

问题解决。

 JSONP的解析可以参考以下网站:

http://zh.wikipedia.org/zh/JSONP

 

 

=================================

2、在本地目录中,一个页面中链接到另一个页面时,报错“Error loading page”:

该问题在官网上有说明:

http://jquerymobile.com/demos/1.0a4.1/docs/pages/docs-pages.html

按照文章中所说,在<a>标签中增加“rel="external"”即可。

例如:

<a href="employeedetails.html?id=123" rel="external">

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值