0

我对使用 Ajax 重新加载的输入值有问题,并且在 Ajax 发布后它的值发生了变化。

当我调用类似的东西时:

var blocks_orderParam = $('input[name=blocks_order]').val();

在 blocks_orderParam 变量中,在 Ajax 发布之前有值。

任何想法如何在 DOM 中重新加载这个值?

4

3 回答 3

0

尝试这个:

$.ajax({
   // ...
}).done(function(){
     var blocks_orderParam = $('input[name=blocks_order]').val();
})
于 2012-08-13T10:00:45.400 回答
0

如果代码超出了ajax回调函数,那么它将在ajax回调函数之前执行。

将代码放在ajax成功回调中,然后你会发现值改变了。

于 2012-08-13T09:58:50.033 回答
0

你必须打电话给你的

var blocks_orderParam = $('input[name=blocks_order]').val();

success在值更改发生后的 ajax 回调函数中。因为,因为AJAX异步的,所以从 ajax 函数执行该语句success无法捕获更新值。

例如:

$.ajax({
  ...
  success: function() {
    // get value of the input after change
    var blocks_orderParam = $('input[name=blocks_order]').val();
  }
});
于 2012-08-13T09:59:08.817 回答