添加记录后刷新div

时间:2012-10-23 16:08:48

标签: php jquery ajax

我之前发过同样的问题,但我没有得到任何反馈!但是,我仍然无法解决这个问题。 所以我有一个index.php来显示我的数据库中的用户。我正在使用jquery UI对话框表单来添加新用户。问题是我想在添加新用户时显示消息并在显示用户的表中显示它。我成功地将记录添加到数据库中,但是我必须刷新整个页面以使新项目在表格中可见。这是我的表:

<div id="users">
    <tr>
        <td>//users's informations</td>
    </tr>
</div>

添加用户的jquery代码:

//some vars
dataString = //dataString
$.ajax({
    type: "POST",
    url: "create.php",
    data: dataString,
    success: function () {
        $(#users).load("index.php", function () {
            display_message("user added");)
        };
    }
});
$(this).dialog("close");
return false;

所以当我点击创建一个新用户时,它只显示index.php loading的空白页面。请帮忙,谢谢。

3 个答案:

答案 0 :(得分:1)

您忘记在选择器

周围放置"
 success: function() {
                 $("#users").load("index.php", function() {
-------------------^
                      display_message("user added");
                      )};
               }

编辑:

  

但我必须刷新整个页面,以便在表格中添加新项目。

如果要在成功回调中刷新整个页面,或者在关闭对话框后刷新此行

location.reload(true);

答案 1 :(得分:0)

假设您正在从ajax请求中检索用户信息:

success: function(userinfos) {
                 $("#users").append($('<tr><td>'+userinfos+'</td></tr>'))
                 display_message("user added");
               }

答案 2 :(得分:0)

在你的create.php中,用html格式化div。确保此html打印在页面中,而不是存储在变量中。

这是您要在index.php中显示的格式。然后在你的成功函数上用下面的方式写它。

$.ajax({
type: "POST",
url: "create.php",
data: dataString,
success: function (data) {
        $("#users tr td").html(data);
    }
});