2016-06-13 140 views
1

我克隆了一個表格,但它也是對輸入值進行了修飾。這裏是HTML表單克隆表格沒有克隆輸入值

<form role="form" method="post" action="<?php echo base_url(); ?>staff_activity/add_ftth" enctype="multipart/form-data" > 

      <div id="main"> 
      <div class="col-md-12"> 
       <div class="form-group col-md-4"> 
        <label>Client's Name</label> 
        <input type="text" class="form-control" name="client_name[]" placeholder="Client's Name" id="client_name" autofocus required/> 
       </div> 


     <div class="form-group col-md-4"> 
        <label>Phone Number</label> 
        <input type="text" class="form-control" name="phone_number[]" placeholder="Phone Number" id="phone_number"/> 
       </div> 
       <div class="col-md-4"> 
        <label>Package</label> 
        <select class="form-control" name="package[]" > 
         <option selected=""> 


         </option> 

        </select> 
       </div> 

      </div> 



      <div class="col-md-12"> 
       <div class="form-group col-md-6"> 
       <label>Remarks</label> 
       <textarea name="remarks[]" class="form-control" placeholder="remarks" ></textarea> 
       </div> 
      </div> 
      </div> 

      <div class="col-md-12 buttonbox"> 
       <div class="pull-left"> 
       <button type="button" class="btn btn-success add" >ADD +</button> 
       <button type="button" class="btn btn-danger remove" >DEL -</button> 
       </div> 
      </div> 
<div class="col-md-12"> 
       <div class="pull-right"> 
        <input type="submit" class="btn btn-success btn-xm submit" name="submit" value="Submit" /> 
       </div> 
      </div> 

     </form> 

而且是我的腳本進行克隆如下

$(document).ready(function() { 
    var i = 0; 
    var last12 = $('.buttonbox').last(); 
    $(document).on('click', '.add', function() { 
     var clone = $('#main').last().clone().attr("id", "main" + i++).insertBefore(last12); 

     //clone.id = "main" + i; 

    }); 

    $(".remove").click(function(){ 
      $("#main:last").remove(); 
    }); 
}); 

雖然克隆形式的值也被克隆的劃分。 你可以在JSFiddle中檢查這段代碼。 https://jsfiddle.net/szn0007/yoebgocq/

+0

更好地去生成一個模板,附加到窗體,然後克隆,然後清空輸入 – madalinivascu

回答

4

嘗試下列步驟:復位輸入和使用val('')對於選擇textarea的,我們將選擇在選擇(默認的)第一元素

var clone = $('#main').clone().find("input,textarea").val("").end().find('select option:first-child()').attr('selected','selected').end().attr("id", "main" + i++).insertBefore(last12); 

刪除使用:

$(".remove").click(function(){ 
      $('div[id^="main"]:last').remove(); 
    }); 

demo

+0

謝謝.. @madalin ivascu –

+0

如何禁用刪除按鈕,如果只有一種形式? –

+0

@SujanShrestha if($('div [id^=「main」]:last').SuiteShrestha使用一個if if – madalinivascu

1

更新

$(function(){ 
    var i = 0; 
    var last12 = $('.buttonbox').last(); 
    $(document).on('click', '.add', function() { 

    var clone = $('#main').clone(); 
clone.find("input").val(""); 
clone.find("textarea").val(""); 
clone.find('select option:first-child()'); 
clone.attr("id", "main" + i++).insertBefore(last12); 



     //clone.id = "main" + i; 

    }); 

    $(".remove").click(function(){ 

    $('.main:last').remove(); 
    }); 
}); 

做參考https://plnkr.co/edit/EvOaLL1mQYB8yf6NDpby?p=preview

+0

怎麼樣的選擇,該值保持不變? – madalinivascu

+0

請再次檢查plunker我更新 –

+0

謝謝你們兩位...我也有刪除問題。你能檢查我的代碼嗎? –