javascript - add unlimited input fields with prototype -


i adding unlimited input field. below code working fine 1 problem adding after first <tr>. not adding field after additional <tr>. if click on add option adding <before> or after first <tr>. ignoring others <tr>.

my html

<table width="100%" cellspacing="0" id="orderchecklist_item_grid_servicecenters" class="data border">     <colgroup><col width="120">     <col>     <col width="100">         <col width="70">     </colgroup><thead>         <tr class="headings">             <th width="80%">item</th>                          <td width="10%" class="last"><button style="" onclick="addfield();" class="scalable add" type="button" title="add option" id="add_new_option_button"><span><span><span>add option</span></span></span></button></td>            </tr>     </thead>     <tbody id="orderchecklist_item_list">           <tr class="template" id="orderchecklist_item_template1">             <td><input type="text" value="" name="servicename[]" placeholder="check list item" class="input-text">             </td>             <td class="last"><button style="" onclick="removefield(this);" class="scalable deletefield" type="button" title="delete" id="delete_button"><span><span><span>delete</span></span></span></button></td>             </tr>      </tbody>      <tfoot id="extra_field" class="no-display template">         <tr class="template" id="orderchecklist_item_template">             <td><input type="text" name="item[]" placeholder="check list item" class="input-text"></td>               <td class="last">   <button style="" onclick="removefield(this);" class="scalable deletefield" type="button" title="delete" id="delete_button"><span><span><span>delete</span></span></span></button></td>           </tr>       </tfoot>   </table> 

my js code adding , removing field

 <script type="text/javascript">  function addfield()  { var htm= $('extra_field').innerhtml; $$('#<?php echo $_block->gethtmlid() ?>_list').last('tr').insert({after:htm});  } function removefield(ele)  {  var row = ele.parentnode.parentnode;     row.parentnode.removechild(row);  }    </script> 

just insert before hidden field.

code

function addfield() {   var htm= $('extra_field').innerhtml;   $('extra_field').insert({before:htm}); } 

another way

function addfield() {   var htm= $('extra_field').innerhtml;   $$('#orderchecklist_item_list tr').last('tr').insert({after:htm}); } 

$$('#orderchecklist_item_list').last('tr') find tr orderchecklist_item_list elements. returns '#orderchecklist_item_list' self.

fiddle , fiddle 2


Comments

Popular posts from this blog

sql - VB.NET Operand type clash: date is incompatible with int error -

SVG stroke-linecap doesn't work for circles in Firefox? -

python - TypeError: Scalar value for argument 'color' is not numeric in openCV -