2012-06-27 4 views
0

자바 스크립트의 내용을 추가동적으로 형태 및 HTML & jQuery를

$('.addTable').live('click', function() { 
    var appendTxt = "<table id='tab1'> 
       <tr><td><input type='text' name='input1' /></td><td><input type='text' name='input2' /></td> 
        <td><input type='button' class='addRow' value='Add Row' /></td></tr></table>"; 
    $("table:last").after(appendTxt); 
}); 

$('.addRow').live('click', function() { 
    var appendTxt = "<td><input type='text'name='input1' /></td><td><input 
       type='text'name='input2' /></td><td><input type='button' class='addRow' value='Add Row'/></td> "; 
    $("tr:last").after(appendTxt); 
}); 

HTML :

<table id="tab"> 
    <tr> 
     <td> 
      <input type="text" name="input1" /> 
     </td> 
     <td> 
      <input type="text" name="input2" /> 
     </td> 
     <td> 
      <input type="button" class="addRow" value="Add Row" /> 
     </td> 
    </tr> 
</table> 

<input type="button" class="addTable" value="addTable" /> 

I 버튼 "행을 추가"충돌, 나는 동적으로 새 행을 얻을. "테이블 추가"버튼을 누르면 새로운 테이블이 생깁니다.

하지만 이전 테이블뿐만 아니라 모두 새로운에서 "행을 추가"명중 할 때이 후, 나는 $("tr:last").after(appendTxt) 을 넣어 때문에 나는 마지막으로 추가 된 테이블에 추가 된 행을 얻을 그래서에 존재하는 최신 <tr>에 추가

최신 표.

"new table"을 눌렀을 때 해당 테이블에 행을 추가 할 수 있도록 더 좋은 방법이 있습니까?

+0

정확히 무엇을 기대합니까? – Blaster

+0

테이블 추가를 클릭하면 새 테이블을 추가하려고합니다. 이 테이블 t1에는 row1이 있습니다. 행 추가 단추를 누르면 테이블 t1에서만 행을 추가해야합니다. 테이블 t2에 대해서도 마찬가지로 자체 행이 있어야합니다. – Papps

+1

테이블을 추가 할 때마다 코드에서 동일한 ID를 다시 사용합니다. ID는 고유해야합니다. 수정에 대해 – j08691

답변

0

위의 의견을 말한 후.

변경 :

$("tr:last").after(appendTxt); 

하려면 :

$(this).closest('table').find('tr:last').after(appendTxt); 

나는 당신의 행 추가 버튼을 사용하여 새 행을 추가하는 각 테이블에 존재 가정합니다.

+0

에게 감사드립니다. 그것은 효과가 있었다. – Papps

+0

@Papps : 안녕하세요. – Blaster