2016-02-06 3 views
0

Я печатаю строки в талбе следующим образом. когда щелкнули ячейку btnDes, я могу захватить эту переменную из java-скрипта.Javascript событие для ячейки таблицы, созданной AJAX

Когда одна и та же таблица печатается через AJAX, тот же код javascript не может захватить событие и переменные.

Может кто-нибудь сказать мне, как это сделать?

$counter = 0; 
while ($row = $db->getAssocArr($results)) {   
?> 
<form action="form.php" method="post" id="form-<?php echo $counter; ?>" enctype="multipart/form-data"> 
<tr> 
<td><?php echo $row['name']; ?> 
<input type="hidden" value = "<?php echo $row['projId']; ?>" name="projId"/> 
</td> 
<td><a href="#" name="btnDes">Design</a> | </td> 
</tr> 
</form> 
<?php 
     $counter++; 
    } 

ява скрипт

designBtn = document.getElementsByName("btnDes"); 
    for (var i = 0; i < designBtn .length; i++) { 
     designBtn [i].id = i;   
     designBtn [i].onclick = fdesign;    
    } 
+1

, так как они создаются динамически, так что вам нужно сделать что-то вроде: -http: //stackoverflow.com/questions/203198/event-binding-on-dynamically -created-elements –

ответ

0

Я была такая же проблема, я использовал JQuery, чтобы справиться с этим. установить класс для этого имени, попробуйте эту мощь полезной

$(document).ready(function() { 
     $('body').on('click', '.btnDes', function(){ 
      var designBtn = $(.btnDes).val(); 
      for (var i = 0; i < designBtn .length; i++) { 
      designBtn [i].id = i;   
      designBtn [i].onclick = fdesign;    
      } 
     } 
+1

почему jquery, javascript также может это сделать –

Смежные вопросы