熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

jQuery DataTables插件從服務器端獲取數據的方法

2013-11-15 12:09:59  來源: JSP教程 

  sAjaxSource參數值是urltable會發送ajax請求從服務器端獲取數據服務器端返回的數據應該是一個可以被轉換成JSON對象的JSON字符串這個字符串必須嚴格符合JSON格式的要求否則會出錯該數據對象該對象的key應該是“aaData”例如

  Js代碼:

  {

  "aaData":

  {

  "columnA":"valueA"

  "columnB":"valueB"

  

  }

  }

  bServerSide參數設置成true表示使用服務器端處理數據當排序時會直接到後台查詢數據直接顯示不會在前端進行排序操作

  fnServerData參數用來自定義函數代替DataTables插件默認的從服務器端查詢數據的函數默認的函數如下

  Js代碼:

  /**

  * @param {string} sSource HTTP source to obtain the data from (sAjaxSource)

  * @param {array} aoData A key/value pair object containing the data to send

  * to the server

  * @param {function} fnCallback to be called on completion of the data get

  * process that will draw the data on the page

  * @param {object} oSettings DataTables settings object

  */

  "fnServerData": function ( sUrl aoData fnCallback oSettings ) {

  oSettingsjqXHR = $ajax( {

  "url": sUrl

  "data": aoData

  "success": function (json) {

  if ( jsonsError ) {

  oSettingsoApi_fnLog( oSettings jsonsError );

  }

  $(oSettingsoInstance)trigger(xhr [oSettings json]);

  fnCallback( json );

  }

  "dataType": "json"

  "cache": false

  "type": oSettingssServerMethod

  "error": function (xhr error thrown) {

  if ( error == "parsererror" ) {

  oSettingsoApi_fnLog( oSettings "DataTables warning: JSON data from " + "server could not be parsed This is caused by a JSON formatting error" );

  }

  }

  });

  }

  我們可以用這個參數來自定義ajax請求也可以對獲取到的數據進行處理等操作例如

  服務器端之返回表格的數據對象沒有用“aaData”作為數據的key我們就可以在我們定義的回調函數裡面給數據加上“aaData” key

  fnServerParams參數用來發送額外的數據給服務器例如

  Js代碼:

  $(#example)dataTable( {

  "bProcessing": true

  "bServerSide": true

  "sAjaxSource": "scripts/server_processingphp"

  "fnServerParams": function ( aoData ) {

  aoDatapush( { "name": "more_data" "value": "my_value" } );

  }

  });


From:http://tw.wingwit.com/Article/program/Java/JSP/201311/20430.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.