为什么ajax成功被召唤一次?

时间:2012-05-13 16:32:16

标签: ruby-on-rails ajax jquery

为什么,如果我在javascript中编写html方法,它只被调用一次,但是如果我只有警报,它每次都会调用,我会改变输入中的值(模糊)。

$(".quantity").blur(function() {
    console.log("upd");
    $.ajax({ 
      url: "/line_items/update_quantity/"+$(this).attr("id"), 
      type: "GET", 
      data: {quantity: $(this).val()},
      success: function(text)
      {
        alert(text);
        $('.right').html(text);
      },
      error: function(){
        alert('Ошибка javascript');
      },
      dataType : "html"
    });
  });

我需要在每次模糊后重新加载html ...

2 个答案:

答案 0 :(得分:1)

尝试这样做..

$(document).on('blur', '.quantity', function() {
   // place your code here
});

我怀疑你正在替换应用原始模糊绑定的dom元素。如果这样做,则删除事件处理程序。 On()会让它保持活力。

答案 1 :(得分:0)

如果.quantity是动态元素(我认为是这样),请尝试

$(document).delegate('.quantity', 'blur', function() {
   // code
});

read here about delegate()