2009-05-20 5 views
0

Я пытаюсь перезагрузить таблицу, которая также была сгенерирована PHP.jQuery - Обновить таблицу

В таблице имеет идентификатор: #bookmarks

После того, как пользователь нажал кнопку, таблица должна перезагрузить содержание + данные, которые они только что добавили. Я немного смущен, потому что не знаю, как отправить все данные из результата PHP.

ответ

0

Для получения конкретной справки по использованию jQuery ознакомьтесь с плагином jEditable, который предназначен для предоставления возможности редактировать данные на месте. Также есть инструкции о том, как собирать данные и сохранять их.

+0

Редактирование завершено, это просто перезагрузка таблицы. –

+0

Я использовал jEditable спасибо. –

0

Когда пользователь нажимает кнопку, вы должны вызвать код, который использовался для загрузки таблицы. Данные могут быть данными с начала + данными, добавленными пользователями. Или данные могут быть перезапущены с сервера, в зависимости от того, как работает ваше приложение.

Немного больше информации может прояснить ситуацию, поэтому мы могли бы дать более конкретные ответы.

1

В форме пункта:

  • Представить данные пользователя обратно на PHP страницу с помощью запроса AJAX. (Посмотрите на плагин jQuery Form)
  • Страница PHP должна принимать и проверять данные, вставлять их в базу данных, а затем отправлять ответ на страницу в некотором формате (я рекомендую JSON, используя функцию php json_encode.
    • ответ должен быть либо «отклонен» или «общепринятый» с данными пользователя возвращается к ним, очистке в соответствии с требованиями вашей системы.
  • Затем в методе успех обратного вызова AJAX, использование jQuery, чтобы добавить данные в таблицу или сообщить им, почему они были отклонены.
+0

Я не использую JSON для создания моего стола, я считаю, это дополнительный шаг, который может быть пропущен без труда. –

+0

, поэтому вы создаете его на стороне сервера в PHP? Я не вижу там различий, кроме: а) больше данных для отправки, и б) вы помещаете логику представления (html-теги) в свой уровень данных (php). – nickf

4

Это предполагает, что ваш 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> 
+0

Я не могу этого сделать, потому что есть другие функции, которые требуют, чтобы таблица была там. –

+0

Джеймс, но таблица будет там, даже по первому запросу, вы можете сделать Внутри файла, и когда вы откроете страницу, ваша таблица будет загружена и с помощью AJAX он будет динамически загружаться – duckyflip

+0

Конечно! Благодарю duckyflip! –

0

Ну таблица генерируется с помощью этого:

<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> 
+0

хорошо, я думаю, вам понадобится другой способ работы, если вы хотите ajaxify вашей таблицы с помощью jQuery. – Natrium

0

Сначала вам необходимо изучить основы AJAX.

Вам нужно научиться ходить, прежде чем начать работать.

Искать некоторые учебники по Ajax, PHP & Ajax

Here и here являются 2, чтобы начать с

+0

Все введено отлично в таблицу, даже удаление работает! Как насчет перезагрузки всей страницы? Будет ли location.reload() работать даже после поста AJAX? –

+0

местонахождение.reload() может работать. Я этого не знаю. Итак, если я прав, вы отправляете данные на сервер с помощью ajax. Но при извлечении вы не используете ajax. Правильно? Если вы извлекаете данные с помощью Ajax, вся часть перезагрузки может быть легче и проще, чем просто выполнить document.reload() – Natrium

Смежные вопросы