即時通訊使用datatables來顯示數據,我想從我的服務器以良好的方式獲取語言設置。問題在於以一種可能的方式格式化數據,我寧願使用盡可能少的修改來使用json格式。無法正確使用json響應
我想用這樣的:
(至於我的數據表中創建一個參數,這是什麼數組對象JSON字符串????)
var oLanguage =
{
"oLanguage": {
"sLengthMenu": "_MENU_ per page"
}
};
我嘗試獲得從這個數據使用這種方法的服務器:
$.getJSON('/olan', function(data){
oLanguage=data;
});
服務器代碼:(PHP,SLIM)
$app->get('/olan', function() use ($app, $lan){
$oLanguage = array('oLanguage' => array('sLengthMenu' => '_MENU_ per page'));
$response = $app->response();
$response['Content-Type'] = 'application/json';
$response->body(json_encode($oLanguage));
});
我能夠遍歷$ .getJSON方法中的數據,並且所有信息都在那裏,必須是格式/對象處理的東西。我還沒有很好地理解我需要的對象的類型,我可以聲明它,但我不知道它是什麼:)我希望它有某種類型的json對象,所以我可以輕鬆地將它作爲我試着去做。我可以使用$ .each迭代來聲明它,但它會很難看。
這是這裏計算器我的第一個問題,謝謝你幫我出
-------------------------答案(不能發佈它的第8個小時)---------------
原來,
感謝Shinosha
,有一個構建數據表的功能以獲得l來自服務器的語言設置。通過建立這樣的表格:
$('#tableid').dataTable({
"oLanguage": {
"sUrl": "/olan"
}
});
和編輯我的服務器代碼:(改變$ oLanguage變量)
$app->get('/olan', function() use ($app, $lan){
$oLanguage = array('sLengthMenu' => '_MENU_ per page');
$response = $app->response();
$response['Content-Type'] = 'application/json';
$response->body(json_encode($oLanguage));
});
它的工作原理!
在Javascript中,[]表示數組,{}表示對象。您可以根據需要嵌套對象和數組。使用json驗證器,如jsonlint.com 驗證您的服務器響應。,gvmani
oLanguage是與屬性oLanguage其是與屬性sLengthMenu的物體的目標。 sLengthMenu具有值 「MENU每頁」
var oLanguage =
{
"oLanguage": {
"sLengthMenu": "_MENU_ per page"
}
};
請參閱http://datatables.net/plug-ins/i18n#how_to和http:// datatables。淨/使用/ I18N – LMeyer
由於Shinosha, 設置 「oLanguage」:{ 「SURL」: 「/ olan」 } 和編輯服務器變量$ oLanguage =陣列( 'sLengthMenu'=> '每頁_MENU_')作品!:) –