Php 使用ajax更新表单

Php 使用ajax更新表单,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我有一个显示用户信息的表列表。顶部将有一个修正链接。我需要通过Ajax更新表单,而不是转到另一个页面进行更新。 这是我的密码 <?php while ($row = mysql_fetch_assoc($displayer)){ echo("<tr><td>First Name</td><td>" . $row['first_name'] . "</td> </tr>");

我有一个显示用户信息的表列表。顶部将有一个修正链接。我需要通过Ajax更新表单,而不是转到另一个页面进行更新。 这是我的密码

  <?php  while ($row = mysql_fetch_assoc($displayer)){

            echo("<tr><td>First Name</td><td>" . $row['first_name'] . "</td> </tr>");
            echo("<tr><td>Last Name</td><td>" . $row['last_name'] . "</td> </tr>");
            echo("<tr><td>Email</td><td>" . $row['email'] . "</td> </tr>");
            echo("<tr><td>Country</td><td>" . $row['country'] . "</td> </tr>");

            echo "<a  class='page' href='amend.php?id=" .urlencode($row['users_id']) . "&amp;firstname=" .urlencode($row['first_name']) . "&amp;lastname=".urlencode($row['last_name']) ."'>Amend Record</a></td></tr>";
            ?>


有谁能告诉我如何在同一个页面上使用Ajax更新表单。

很多细节都需要一个很长的答案……尽管如此,我还是要强调一些重要的出发点

首先,您需要一个JS文件,其中包含一个关于链接的处理程序。 当点击链接时,必须发出一个ajax请求…有多种方法可以做到这一点,但我个人使用jquery的$.ajax…在请求中,您必须收集反映表单输入值的变量…然后将这些值发送到进行验证的PHP脚本,如果验证成功,则更新表单中的相应值在请求中,还必须指定此脚本所在的URL

不过,这个ajax请求由两个重要的回调组成……错误和成功……在这些回调中,您必须编写代码来处理请求成功与否的情况……例如,当您确定在数据库中确实发生了这种情况时,您可以在PHP中对此进行检查,然后以表单形式更新值脚本…PHP脚本回显的任何值都必须使用json_encode完成…您可以使用成功回调的数据参数访问这些值。正如我所说,还有一个错误回调..这是由各种原因触发的…如果URL错误或json未从服务器返回

以上这些仅仅是起点……我正在阐述一种通用方法。

/*AJAX使用jQuery*/
/* AJAX using jQuery */

// attach event to your <a> upon click
$(document).on('click','a.page', function(e) {
    e.preventDefault()
    var sURL = $(this).attr("href"); // url to call for amend
    update( sURL ) // call the function update
});

// update() function that is called after clicking anchor tag 
function update( _url ) 
{        
    $.ajax({
        method: 'POST',
        url: _url,
        success: function() { 
            alert("Amend Success)";
        },
        error: function( c ) {
            alert("Internal server error. Check your browser console");
            console.log( c.responseText )
        }
    })
}
//单击后将事件附加到您的 $(文档)。在('click','a.page',函数(e){ e、 预防默认值() var sURL=$(this).attr(“href”);//用于修改的url update(sURL)//调用函数update }); //单击定位标记后调用的update()函数 函数更新(_url) { $.ajax({ 方法:“POST”, url:_url, 成功:函数(){ 警惕(“修正成功)”; }, 错误:函数(c){ 警报(“内部服务器错误。请检查浏览器控制台”); console.log(c.responseText) } }) }
注意:把这个放在标签前面


那有什么问题?