$ .post完成后重新加载DIV(或页面)

时间:2015-07-03 23:06:16

标签: php jquery

我有一个div,它根据SQL数据库中的某些变量加载数据和按钮。当我们单击这些按钮时,它会因为paypal api调用或其他任何内容(例如“取消激活此帐户”按钮)而更改这些SQL变量。

现在,当我点击按钮时,一切正常但页面保持不变,因此“停用按钮”仍然显示“停用按钮”,而不是说“帐户已停用”以及其他类似的示例。刷新页面时,它们会因SQL数据库已更改而更改

现在,我正在使用以下代码:

location.reload();

有效刷新页面,但是你必须点击几次才能回到你工作的div。这不是一件大事,但也很烦人。

我想知道的是,如果有人点击按钮(例如停用帐户),它会显示消息“帐户已成功停用”,然后只刷新DIV,然后加载基于SQL数据库更改的新信息。

到目前为止,我试过这个:

var url = 'index.php';
$('#div1-wrapper').load(url + ' #div1');

实际上做了我想要的但是在重新加载之后,我的“clicky”div(例如左上角的+)都没有工作,因此div不会像它应该的那样扩展。就像它重新加载时它没有在div上包含正确的名称,但是当我查看源代码时它是原始信息,因此重新加载要么没有发生,要么没有在源代码中更新。

我只需要知道是否有一种方法可以重新加载div,就好像页面已经刷新一样(以便重新运行PHP代码并重新评估变量)但不刷新页面。

另外我想用JQuery来做,因为当你点击我的按钮,它运行jquery $ .post并在它发出警报(数据)之后的帖子中它会刷新。

我的按钮调用如下所示:

$("[id^=cancelbtn_]").click(function(){
     var formid = this.id;
     var myRegexp = /^cancelbtn_(\d+)$/;
     var match = myRegexp.exec(formid);
     var which_row = match[1];
     var username = $("#cancelbtn_"+which_row).attr("attr1");
     $.post('post.php', {'administrator':7,'username':username}, function(data) {
         alert(data);
         location.reload();
     });
 });

0 个答案:

没有答案