jQuery — перезагрузить таблицу
Вопрос
Я пытаюсь перезагрузить таблицу, которая также была создана PHP.
Таблица имеет идентификатор: #bookmarks
После того, как пользователь нажал кнопку, таблица должна перезагрузить содержимое + только что добавленные данные.Я немного смущен, потому что не знаю, как отправить все данные из результата PHP.
Решение
Для получения конкретной помощи по использованию jQuery ознакомьтесь с jРедактируемый плагин, который предназначен для предоставления возможности редактировать данные на месте.Также есть инструкции о том, как собрать данные и сохранить их.
Другие советы
Это предполагает, что ваш PHP возвращает готовый к внедрению HTML-код для таблицы:
$("#update_button").click(function(){
$("#mytable").load("/tools/getTable.php")
})
на вашей странице вам нужен заполнитель DIV следующим образом:
<div id="mytable"></div>
и ваш getTable.php должен вернуть html следующим образом:
<table>
<tr>
<td>col1<td>
<td>col2<td>
<tr>
</table>
В точечной форме:
- Отправьте данные пользователя обратно на страницу PHP с помощью запроса AJAX.(Посмотрите на плагин jQuery Form)
- Страница PHP должна принять и проверить данные, вставить их в базу данных, а затем отправить ответ обратно на страницу в определенном формате (я рекомендую JSON, используя функцию php). json_encode.
- Ответ должен быть либо «отклонен», либо «принят» с возвратом данных пользователя, очищенными в соответствии с требованиями вашей собственной системы.
- Затем в методе обратного вызова успеха AJAX используйте jQuery, чтобы добавить данные в таблицу, или отправьте им сообщение, сообщающее, почему оно было отклонено.
Когда пользователь нажимает кнопку, вы должны вызвать код, который использовался для загрузки таблицы.Данными могут быть данные с самого начала + данные, добавленные пользователями.Или данные могут быть повторно получены с сервера, в зависимости от того, как работает ваше приложение.
Немного дополнительной информации может прояснить ситуацию, и мы сможем дать более конкретные ответы.
Ну, таблица генерируется с использованием этого:
<table id="bookmarks">
<thead>
<tr class="table-top">
<th>Thumbnail</th>
<th>Title/Description</th>
<th>Tags</th>
<th>Action</th>
</tr>
</thead>
<?php
$hID = userToID($_SESSION['username']);
$hQuery = mysql_query("SELECT * FROM linkz WHERE userid='$hID'") or die(mysql_error());
while($hRow = mysql_fetch_array($hQuery)) {
echo "<tr class='link'><td><img src='http://www.thumbshots.de/cgi-bin/show.cgi?url=".$hRow["location"]."' /></td><td><a href='share/".$hRow['shareid']."'>".$hRow["title"]."</a> - <i>". $hRow["description"]."</i><br /><b>Share Link:</b> http://www.linkbase.us/share/".$hRow['shareid']."</td><td>".$hRow['tags']."</td><td><a href='#' id='".$hRow['shareid']."' class='delbutton'>Delete</a></td></tr>";
}
?>
</table>