私は自動的に各行にidを挿入するDataTableをレンダリングしようとしています。Datatablesサーバー側の自動行ID
http://datatables.net/release-datatables/examples/server_side/ids.htmlによれば、各行にDT_RowIdの「列」を渡すと、自動的にそれを行う必要があります。私はサンプルのPHPを使用してい
は、彼らがここに提供:http://datatables.net/release-datatables/examples/data_sources/server_side.html
は私がDT_RowIdという名前の列にテーブルインデックスをオンに動的テーブルを持っているMySQLのビューを作って、それを出力して$ aColumns変数に追加しましたJSONで
値はJSONに出力されますが、何も起こりません。私は、JSONがあるべきそれらが提供するPHPコードは、例では、列
の名前をエコーしないからだと99%確信している:
"aaData": [
{
"0": "Gecko",
"1": "Firefox 1.0",
"2": "Win 98+/OSX.2+",
"3": "1.7",
"4": "A",
"DT_RowId": "row_7",
"DT_RowClass": "gradeA"
}, { ... }
が、PHPは、キーレス
を出力します"aaData": [
{
"Gecko",
"Firefox 1.0",
"Win 98+/OSX.2+",
"1.7",
"A",
"row_7",
"gradeA"
}, {...}
「クライアントサイドのJavaScriptが行の最後の列をどのように知っていると思いますか?」と思っているのを見て、DT_RowIdですか?だから私は、彼らの例のように、キーデータをJSON出力にPHPを編集し、私が取得:
{
"sEcho": 1,
"iTotalRecords": "4",
"iTotalDisplayRecords": "4",
"aaData": [
{
"Nombre": "Some Name",
"username": "some username",
"Email": "some email",
"lastModified": "0000-00-00 00:00:00",
"lastLogin": "2012-02-23 12:04:55",
"rolname": "Some string",
"DT_RowId": "2"
}, {...},{...},{...} ] }
が、私は「のDataTableの警告という警告を取得:要求された未知パラメータを 『0』のデータソースを構成します行0は「
私のJSONは彼らのようにフォーマットされており、私はそれをレンダリングするのDataTableのために有効なJSONではありませんなぜ私にはわからない
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "scripts/id.php"
を使用しています。私は何か愚かな行方不明かもしれないが、私はここで立ち往生している。あなたは「キーレス」と呼んで任意のヘルプ
あなたはよろしいですか? json_encode()と[{} {}]構造体によって自動的に行われます。ドキュメントで提供されているJSONの例と同じです。 – Juan
{}間のオブジェクト表記{ foo ":" bar "}。 jsonlint.comを使用していない場合、それは最終的にjsonが – charlietfl
を検証する究極の方法です。実際にはPHPが1行を出力し、jsonlint.comを使用してここに貼り付けてからprecomifyして、 – Juan