2012-06-06 53 views
0

希望有人能指引我正确的方向。将jquery应用于生成的内容

我有这样的代码:

//nextButton processing 
    $('.nextButton').on("click", function(){ 
    //$('.nextButton').click(function(){ 

     var querystring = $("#formStep").serialize() + "&step=" + step + "&session=" + session; 
     // Ajax Call 
     $.ajax({ 
       type: "POST", 
       data: querystring, 
       url: "includes/processnext.php", 
       dataType: 'json', 
       success: function(msg){ 
        $('.result').append(msg.answerRow); 

       } 
      }); 

    // End Ajax Call 
    }); 

现在这个工程的第一.nextbutton在那里,但阿贾克斯的结果与下一下一步按钮替换它。

为了解决这个问题,我尝试使用Jquery.on()(旧代码注释掉),但似乎没有解决它。

有什么建议吗?

谢谢。

+0

发表的jsfiddle如果可以的话,更容易分析。 –

+1

你想利用事件委托。阅读'.on'文档中的* Direct和委托事件*部分。 –

回答

1

附上click事件处理程序容器元素,就像这样:

$('#container').on("click", ".nextButton", function(){ 

容器元素就可以“抓住” click事件,因为它从.nextButton冒泡。

0

你是对的,.on()它的方式,但你缺乏最后一步。 你必须将事件委托给父母。

那样,任何具有该类的对象都会处理点击事件。

$('#parent').on('click','.nextButton',function(e){...}); 

更多信息 - >http://api.jquery.com/live/

相关问题