2015-02-09 42 views
2

我是完全新的jQuery。onjlick jquery沒有工作後,AJAX電話

我寫了onclick事件是這樣的:

 $(document).ready(function() { 
     $('body').find('.milestonetable').each(function() { 
      var mTable = $(this); 
      $(this).find('tr:first').children().eq(0).find('table').find('tr:last').children().eq(0).find('span').on('click', function() { 
       var _mid = $(mTable).parent().next('table').find('tbody').find('tr').children().eq(1).find('input').val(); 
      //some other things to do. 
      }); 

     }); 
    }); 

其工作的罰款。 但是當我調用ajax時,它停止工作。 我已經想通了,我必須把它寫這樣的事情:

 $(document).on('click','.someclassName', function() { 

     }); 

但我不能轉換類似於下面的代碼上面的代碼。 請幫忙。

注:我使用jQuery 1.10.4

+0

閱讀有關事件委派http://learn.jquery.com/events/event-delegation/ – 2015-02-09 10:30:07

+1

的'對委派的形式'正是你應該使用的。由於缺乏您提供的信息,我們無法幫助您。 – 2015-02-09 10:30:58

+0

給我們的代碼你在哪裏做了Ajax調用 – Sn0opr 2015-02-09 10:54:56

回答

0

可以更換你的代碼驗證碼:

$('.milestonetable').on('click', '.class-added-to-your-span', function() { 
    var mTable = $(this).closest('.milestonetable'); 


}); 

注意,我添加了一個類跨度您正在搜索:class-added-to-your-span

通過這種方式,您可以將單擊事件處理程序附加到.milestonetable以獲得您的範圍,並讓您的代碼更簡單一些。

+0

你可以更好地描述一下它的作用,而不是僅僅發佈代碼。 – 2015-04-18 13:01:12

3

以下列方式配置事件可能會解決您的問題。

$(document).on("click",".class-added-to-your-span", function(){ 


}); 

在直播代表團的更多細節可以在這裏找到> http://api.jquery.com/live/