2014-04-12 46 views
0

我有一種形式,我創建了一個腳本來複制這個表單,當你點擊一個特定的鏈接。我如何提交所有克隆表格?

我使用的事件的clone()要做到這一點,它的工作的罰款。

現在,我想創建一個按鈕,提交所有創建的表單並插入一個表格中的所有信息。

我只是想知道我怎麼能做到這一點,並且事件做我需要使用。

我jQuery代碼是非常簡單的

$(".add").click(function() { 
     $('.offer:first').clone().find("input:text").val('').end().appendTo('.job'); 

    }); 
+0

我們可能需要一些HTML。 – Hidde

+0

我只是想了解的邏輯,HTML是非常基本的,我有一個形式和一個輸入框 – user3429726

回答

0

你將不得不使用AJAX,這樣你可以收集所有形式的數據在同一個地方。

var forms[0] = $('.offer:first'); 
var formId = 1; 


$(".add").click(function() { 
     $forms[formId] = $('.offer:first').clone(); 
     $forms[formId].find("input:text").val('').end().appendTo('.job'); 
     formId++; 
}); 

$(".submit").click(function(e) { 
     e.preventDefault; 
     for (i=0; i<count($forms);i++) { 
      values[i] = $forms[i].serializeArray(); 
     } 

     $.ajax(
      url: "submitScript.php", 
      data : {values:values}, 
      success: function() { 
       for (i=1; i<count($forms);i++) { 
        forms[i].delete(); 
       } 
      } 
    ); 
}); 
+0

我錯過了);在我的$ .ajax調用結束時,我剛添加它。 – dops

+0

提交按鈕將在您的表單結構之外,否則它會使此函數x次數 – dops

0

,你這樣做是不對的樣子,你需要克隆只有一組輸入,然後附加到一個獨特的形式,你不需要克隆並製作多種形式。

<form id="unique_form"> 
    <div id="inputs_to_clone"> 
     <input type="text" name="input_name"> 
     <input type="text" name="input2"> 
    </div> 
</form> 

所以現在你可以做

$(".add").click(function() { 
    $('#inputs_to_clone').clone().find("input:text").val('').end().appendTo('#unique_form'); 
}); 

而且你可以提交你的獨特的形式。

+0

我不認爲這將工作,因爲你的獨特的形式將包含x數目的同名輸入。 – dops

+0

當你有這將作爲值的幾種語言如PHP,C#或其他 – HaSuKrOnOs

+0

我一直以爲數組來處理多個同名輸入你得向[]上月底它要處理的名稱由PHP和不覆蓋。例如name =「myInput []」 – dops