-4

目前我正在从数据库中提取数据以动态构建表。提取数据后,我希望自己和/或我的用户看到一个选项(按钮),如果他们单击该按钮,我可以从表以及数据库中编辑/删除该行。

我是 jQuery 新手,所以我不确定应该使用什么$.ajax()功能。这是我的 php 代码:

foreach($stmt as $item){

            echo '
            </td>
            <td>'.$item['asin'].'</td>
            <td>'.$item['weight'].'</td>
            <td>'.$item['dimension'].'</td>
            <td>'.$item['category'].'</td>
            <td>';

                    echo '<button type="button" class="btn">Update Me!</button>';

            echo '
            </td>
        </tr>';
    }
    echo '</tbody>
    </table>';

这是我的 jQuery 代码:

      $(document).on('click', '.btn', function() {
    $.ajax({
    //code here etc
    success:function(){
    //what to put here?
    }

});
}
4

1 回答 1

2

所有这些都被解释了——你应该能够从这里得到答案。至少足以尝试一些东西并发布一个更完整的例子。

1)每个表行都需要有一个 javascript 可以抓取的标识符。您可能会发现使用 data_ 元素会更容易

PHP 有:

echo '<button type="button" class="btn" data_id="'.$item['asin'].'">Update Me!</button>';

JS有:

$(document).on('click', '.btn', function() {
   var id = $(this).attr('data_id');
   ...

2) 您需要一个 PHP 函数来返回该行的更新数据

<?php

    if (isset($_GET['id'])) {
         $id = $_GET['id'];
         $item = Get Data From Where Ever
         echo '<td>'.$item['asin'].'</td>
               <td>'.$item['weight'].'</td>
               <td>'.$item['dimension'].'</td>
               <td>'.$item['category'].'</td>
               <td><button type="button" class="btn" data_id="'.$item['asin'].'">Update Me!</button></td>';
    }

 ?>

3)使用javascript/ajax获取数据

$(document).on('click', '.btn', function() {
    var id = $(this).attr('data_id');
    var self = $(this);
    $.ajax({
       url: 'MyUrl?id=' . id;
       success:function(data){
           $(self).html(data);
       }
    });
}

它并不完美,您需要担心使东西安全,错误检查等,但这应该可以为您提供所需的支持。

于 2012-11-06T04:04:59.773 回答