ソート機能を使用するために、tablesorterとdatatablesの両方を試しました。両方とも、並べ替えの矢印(およびフィルタボックス、ページ... dataTablesで、どちらも機能しませんが)を見ることができますが、それらは変更されますが、データはソートされません。 。ajaxで動作するtablesorterもdataTablesもありません
if (mysqli_num_rows($result) > 0) {
$message .= "<table id='search_table' class='tablesorter'>
<thead><tr>
<th id='search_user'>Usuario</th>
<th id='search_name'>Nombre</th>
<th id='search_surnames'>Apelidos</th>
<th id='search_email'>Correo</th>
<th id='search_role'>Rol</th>
<th id='search_access'>Acceso</th>
<th id='search_center'>Centro</th>
<th id='search_edit'></th>
<th id='search_delete'></th>
</tr></thead>";
while ($row = mysqli_fetch_row($result)) {
// Define $id
$id = $row[7];
// Replace space(" ") whith " " to avoid errors inside functions
$user = str_replace(" ", " ", $row[0]);
$name = str_replace(" ", " ", $row[1]);
$surnames = str_replace(" ", " ", $row[2]);
$center = str_replace(" ", " ", $row[6]);
$message .= "<tbody><tr>
<td>" . $row[0] . "</td>" .
"<td>" . $row[1] . "</td>" .
"<td>" . $row[2] . "</td>" .
"<td>" . $row[3] . "</td>" .
"<td>" . $row[4] . "</td>" .
"<td>" . $row[5] . "</td>" .
"<td>" . $row[6] . "</td>" .
"<td>" .
"<input type='image' src='../resources/edit.png' id='edit_" . $row[0] . "' class='edit' onclick=edit_user(\"$user\",\"$name\",\"$surnames\",'$row[3]','$row[4]','$row[5]',\"$center\",'$id') title='Editar'></button>" .
"</td>" .
"<td>" .
"<input type='image' src='../resources/delete.png' id='delete_" . $row[0] . "' class='delete' onclick=delete_user('$user','$row[4]') title='Eliminar'></button>" .
"</td>
</tr>";
}
$message .= "</tbody></table>";
$message .= "<div id='modify_panel'></div>";
}
その後:ここ
は(DataTableのと、それは同じではなく、 'tablesorter' の 'のdataTable' を使用してい
$.ajax({
type: "GET",
url: "search.php",
data: {data : encrypted.data, salt: enc_salt},
success: function(enc_response){
var response = decrypt_cryptojs(enc_response, encrypted.salt);
var data = JSON.parse(response);
$("#search_result").html(data);
// Initialise tablesorter
$('#search_table').tablesorter();
}
});
私はPHPでテーブルを作成するアヤックスであります
// Encode the message using json
$response = json_encode($message);
// Encrypt the response and send it.
$enc_response = encrypt_cryptojs($response, $salt);
echo $enc_response;
データシートでは、無効なjson応答があるというメッセージが表示されます。
"#search_result"は、別のphpファイルに含まれているphpファイル内にあります。
私は間違っていますか?
ありがとうございます。
編集:私は愚かな間違いを発見した、私はいくつかのtbodysを生成していた。私がタグをしばらく外に動かせば、うまくいきます。ごめんなさい。
あなたのsearch.phpレスポンスは何ですか? – Chay22
レスポンスは、コード化され暗号化された後のテーブルのhtmlコードです。次に、それは解読され、ajaxの成功関数でデコードされ、htmlに挿入されるのはテーブルコードだけです。 – vjsp90