【问题标题】:Using AJAX how to go about editing a value in the database?使用 AJAX 如何编辑数据库中的值?
【发布时间】:2016-03-05 11:46:37
【问题描述】:

大家好,我在我的 PHP 文件中使用 ajax 来删除表中的条目,这是我的代码:

<?php foreach (get_all_categories() as $r) { ?>

<td>
      <?php
            echo '<button type="button" class="btn btn-primary  delete delete-action"><i class="fa fa-trash-o fa-lg"></i> Delete</a></button> 
                                    <input type="hidden" value="'. $r['category_id'] .'"  name="delete[]">';
      ?>
</td>

<?php } ?>


//AJAX CALL

var id;
$('button.delete-category').click(function(e) {
id = $(this).parent()[0].childNodes[3].value;
  swal({
title: "Are you sure?",
text: " You will not be able to undo this action !",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete it!",
closeOnConfirm: false,
html: false
}, function(){
$.post( "delete_category.php", { deletecategoryfunction: id}, function( data ) {
location.reload();
});
});
});

但是我的问题是,如果我有一个编辑按钮,我将如何使用 AJAX 进行编辑,过去几天我一直坚持这个问题,这就是在这里提出这个问题的原因。

$r 基本上会拉出我称为类别的表中所有项目的列表,其中包含(类别名称、描述和可用性。)所以当我这样做时,无论如何我都可以这样做,以便我可以更改或修改类别表的类别名称、描述和可用性。

【问题讨论】:

    标签: javascript php ajax foreach


    【解决方案1】:

    首先,如果你真的想添加 web 2.0 交互性,你不应该写“location.reload()”。使用 JQuery,您可以简单地删除表的行(为什么要使用列代替??)。 在您的问题中,不清楚您要编辑什么。但一般来说,您只需将任何内容的新值(也许,您想编辑类别名称?)及其 id 发送到服务器。对于编辑,您可以使用 ,并且要获取输入的值,您可以使用 $(element).val()。

    【讨论】:

    • 那么我还能如何刷新页面呢?因为我正在编辑它现在工作正常,但是自从我有了 location.reload(); ,它只是在单击编辑按钮后立即重新加载页面,当我进行 ajax 调用时,我是否能够从 php 文件中重定向用户?
    • @jomin_george94,基本上这就是您的页面应该如何工作:服务器上有一个脚本可以一次呈现您的页面,有客户端 javascript 允许修改与页面的交互并发送数据返回服务器,有一个服务器端脚本只处理 ajax 请求。所以没有必要刷新页面,你不应该这样做,因为它破坏了用户体验。
    猜你喜欢
    • 1970-01-01
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 2017-06-04
    • 1970-01-01
    • 1970-01-01
    • 2016-05-22
    • 1970-01-01
    相关资源
    最近更新 更多