2013-02-11 55 views
0

我使用jquery移動taphold它不會與輸入類型收音機

這裏是我的代碼在下面,但它不會工作。正如我想要的那樣,當我點擊一個單選按鈕讓我的行動生活。任何想法爲什麼不起作用?

$('#lbtn').append("<input name='opt1' class='rd_btn' checked type='radio' value="+results.rows.item(i).IdRubrique+" id="+results.rows.item(i).IdRubrique+" />"); 


$('.rd_btn').live('taphold', function() 
      { 
      var sel_id_rub = $('input[name=opt1]:checked').attr('id');//ID of Rubrique 
      window.localStorage.setItem("id_rub", sel_id_rub);  //Id Rubrique 
      liste_Phrase(); 
      } 

回答

1

上面的例子是基於你的代碼。當taphold事件被觸發時,輸入元素的相應ID顯示在警告框內。

想法是在創建的元素上附加taphold事件處理程序。

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Taphold Example</title> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
     <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" /> 
     <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script> 
     <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script> 
     <script> 
      var i = 0; 
      $(document).on('click', '#add', function(e){ 
       i++; 
       var labeledRadio = $(["<label><input name=\"opt1\" class=\"rd_btn\" checked type=\"radio\" id=myId_",i," value=myval_",i," id=myId_",i,">Label_",i,"</input></label>"].join("")).on('taphold', function() { alert($(this).parent().children("input[type=radio]").attr('id')); }); 
       $('#lbtn').append(labeledRadio).trigger('create'); 
      }); 
     </script> 
    </head> 

    <body> 
     <!-- /page --> 
     <div data-role="page"> 
      <!-- /header --> 
      <div data-role="header" data-theme="b"> 
       <h1>Taphold test</h1> 
      </div> 
      <!-- /content --> 
      <div data-role="content"> 
       <input type="button" id="add" value="Add Inputs"/>   
       <div id="lbtn"></div> 
      </div> 
     </div> 
    </body> 
</html> 

我希望這會有所幫助。