Javascript 使用具有不同AJAX源的DataTables,即UWA.Data.getJson
我正试图在我的工作的虚拟学习环境中使用DataTables 介绍 正如我在前面的问题中提到的,我们的VLE使用,它允许我编写JavaScript文件,既可以与VLE通信(用于从VLE的用户帐户(如名称和时间表)检索信息),也可以通过代理与托管PHP文件和数据库的内部网络Web服务器通信 Netvibes UWA AJAX调用 例如,我可以使用以下代码访问我的PHP脚本:Javascript 使用具有不同AJAX源的DataTables,即UWA.Data.getJson,javascript,php,jquery,jquery-datatables,Javascript,Php,Jquery,Jquery Datatables,我正试图在我的工作的虚拟学习环境中使用DataTables 介绍 正如我在前面的问题中提到的,我们的VLE使用,它允许我编写JavaScript文件,既可以与VLE通信(用于从VLE的用户帐户(如名称和时间表)检索信息),也可以通过代理与托管PHP文件和数据库的内部网络Web服务器通信 Netvibes UWA AJAX调用 例如,我可以使用以下代码访问我的PHP脚本: UWA.Data.getJson(List.URL + '?cmd=getObservations&filters='
UWA.Data.getJson(List.URL + '?cmd=getObservations&filters=' + JSONdata, List.init);
两个简单的参数-url,回调
或者,我可以使用完整的数据。请求呼叫:
UWA.Data.request(
BookReviewInput.URL,
{
method: 'post',
proxy: 'ajax',
type: 'json',
cache: 3600,
parameters: obj,
onComplete: BookReviewInput.process
}
这些脚本写在我们的VLE上,VLE的内部网络URL为http://vle.curriculum.local
然后是http://vle.ourschoolwebsite.com
它们与只能从URL本地访问的脚本通信http://php.curriculum.local
DataTables AJAX调用
我现在正试图让DataTables从我位于内部的脚本加载信息,我希望它能够完全完成这一切(即分页和所有操作),因为我们有很多数据,需要花费很多时间才能完全加载
首先,我通过从网站上手动复制一些示例表来确保DataTables以UWA格式工作具有最小.dataTable()
功能的手动HTML表格可以正常工作。
然后我尝试编写以下代码,但不起作用:
<head>
<script type="text/javascript">
//<![CDATA[
widget.onLoad = function(){
$('#example').dataTable( {
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "http://php.curriculum.local/cmd.php"
} );
}
//]]>
</script>
</head>
<body>
<div id="wrapper">
<table cellpadding="0" cellspacing="0" border="0" class="display" id="example"> </table>
</div>
</body>
可能原因
我相对不知情的猜测是DataTables无法访问我的脚本,因为它是跨域的
问题是,我无法将这些脚本放在同一个域上——我无法在我们的VLE上访问PHP或MySQL,这个组织中的任何人也无法访问
势解
我认为答案是尝试在DataTables函数中使用UWA.Data
调用
这是我用来访问脚本的UWA调用:UWA.Data.getJson('http://php.curriculum.local/cmd.php“+”?cmd=getObservations',fnCallback)
,虽然我认为我还需要某种方式来发送数据表的分页变量等。因此,我可能需要使用完整的UWA.Data.request
调用,并发送params
对象
悲哀地
我完全不知道这是否可能,更不用说如何做到了
有人能提供指导吗
提前感谢,
{
"sEcho": 0,
"iTotalRecords": "5",
"iTotalDisplayRecords": "5",
"aaData": [
[
"2012-10-24",
"35010",
"34966",
"10",
"43",
"2",
"2",
"2"
],
[
"2012-11-14",
"34956",
"35010",
"10",
"38",
"2",
"2",
"2"
],
[
"2012-11-09",
"90335",
"34972",
"11",
"28",
"2",
"1",
"1"
],
[
"2012-10-18",
"34961",
"34972",
"11",
"28",
"2",
"1",
"2"
],
[
"2012-10-19",
"34996",
"34972",
"11",
"28",
"2",
"2",
"2"
]
]
}