-4

有什么方法可以知道 Web 服务器响应何时发送到客户端,在传统的回发中,以便我可以执行 jQuery 函数?

例如,div不使用

Page.RegisterStartUpScript("<script type="text/javasctip">alert('Succeed')</script>);

也不

var request = $.ajax({
   url: "page/someWebMethod",
   type: "POST",
   data: {id : menuId},
   dataType: "html"
 });

 request.done(function(msg) {
    $('DivOk').show();
 });
4

3 回答 3

1

如果没有特定的应用程序很难回答,但是,保留在 jQuery 方法中,您可以使用 jQuery 的 ajax 方法的 ansync: false 选项并进行同步,如这里的答案所示:我如何让 jQuery 执行同步,而不是比异步的,Ajax 请求?

于 2012-11-20T14:46:19.150 回答
0

您可以检查使用的 HTTP 方法(例如假设您已经完成了 POST),然后做一些事情,例如在您的 ASPX 中:

<script type="text/javascript">

    var has_posted = <%= GetPosted() %>;

    if (has_posted) callSomething();

</script>

在后面的代码中:

protected string GetPosted()
{
    return (Request.HttpMethod == "POST").ToString().ToLower();
}

我通常这样做,<form>但是可以使用隐藏字段传递额外的检查<input>,但你明白了。

于 2012-11-20T14:37:21.037 回答
0

编辑:(非传统方式):)

jQuery.ajax的成功不应该给你你想要的吗?

$.ajax({
  url: 'ajax/test.html',
  success: function(data) {
    $('.result').html(data);
    alert('Load was performed.');
  }
});
于 2012-11-20T14:37:29.083 回答