2013-08-29 88 views
0

我正在嘗試複選框的選中標籤文本,並試圖追加span標籤中
當用戶單擊popUp中的ok按鈕
這裏它不工作。這裏是我的jsfiddle如何在div標籤中追加一些額外的文本

我的腳本:

$('.modal-footer .preSuccess').click(function(){    
      var parentElement=$(this).parent().parent().attr('id'); 
      $('#'+parentElement+ '.modal-body input[type="checkbox"]').each(function(){ 
       var pre =$(this).next('label').text(); 
       if($(this).is(':checked')){ 
        $('.'+parentElement+'Pre').append('<span>'+pre+'</span>'); 
       } 
      }); 

     }); 

回答

1

嘗試

$('.modal-footer .preSuccess').click(function() { 
    var modal = $(this).closest('.modal'); 
    var parentElement = modal.attr('id'); // issue here, use closest to get a parent matching the selector 
    //again issue with the selector 
    modal.find('.modal-body input[type="checkbox"]').each(function() { 
     var pre = $(this).next('label').text(); 
     if ($(this).is(':checked')) { 
      $('.' + parentElement + 'Pre').append('<span>' + pre + '</span>'); 
     } 
    }); 

}); 

演示:Fiddle

+0

@downvoter我沒有遺漏任何東西 –

+0

你的答案工作完美 - Upvoted – Rex

+0

@ArunPJohny在答案如果我選擇選項[任何]它不讀任何標籤你可以請檢查http://jsfiddle.net/arunpjohny/EEvc5/ –

0

我看看你的代碼,你就錯過了查詢複選框時的空間:

$('#'+parentElement+ ' .modal-body input[type="checkbox"]') 

它無法找到您的複選框,找不到文本。

除此之外,我會建議針對.parent()。parent()結構,因爲它非常容易出現未來的錯誤。也許只是直接調用這個id,但我不確定你是如何使用這段代碼的。