北冥有大大鱼 2014-05-15 12:17 采纳率: 0%
浏览 3393

请教关于 easyui 的跨域问题

在一个php页面系统中嵌入一个easyui页面,在显示datagrid时,只出现表头,不能出现其内容,目前在火狐29.0以前的版本都不能读出数据,包括主流的ie,谷歌等都不能读取数据,最后查询到是这2个系统不是同一个网域造成浏览器的限制请求,网上有说用jsonp可以处理,但是它怎样与easyui的datagrid整合,而且请求一改,我整个系统都要随之更改,有没有好的解决方法??

  • 写回答

1条回答

  • Go 旅城通票 2014-11-19 03:20
    关注

    先用jquery的ajax指定dataType为jsonp加载好数据,调用datagrid的loadData方法加载jsonp返回的数据

        $.ajax({ url: 'data.asp', dataType: 'jsonp', success: function (data) {
        $('#dg').datagrid('loadData', data);
    }, error: function () { alert('动态页有问题') }
    });
    

    或者自定义loader对象

    <table class="easyui-datagrid" title="easyui datagrid使用jsonp数据" style="width:700px;height:250px"
    

    data-options="fitColumns:true,collapsible:true,
    loader:function(param,success,error){
    $.ajax({ url: 'data.asp', dataType: 'jsonp', success: function (data) {
    success(data);
    }, error: function (xhr) {error(xhr.responseText) }
    });}" id="dg">

    DEMO:easyui datagrid跨域加载jsonp数据源

    评论

报告相同问题?

悬赏问题

  • ¥15 MATLAB动图的问题
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名