2014-02-24 39 views
0

我有一個表單,這個表單(長話短說)有多個相同的輸入字段(可以是2-5次的任何地方)。表單必須有多次這個字段,有幾個原因背後的原因。我使用輸入字段使用ID,但不得不將其更改爲一個類,因爲該字段將會出現多次。使用同一類的多個輸入字段在POST上取第一個值

<input type="text" style="width: 231px; height: 25px;" name="myname" class="myclass" placeholder="myname"> 

我然後使用ajax將數據發佈到數據庫。

$.ajax({ 
     type: "POST", 
     url: "/myfile.php", 
     data: {"myname": $(".myclass").val()}, 

當第二個字段被POST,它總是空的,但是第一個POST工作得很好。想知道我可以做什麼來完成這項工作,知道我必須多次在頁面上有這個字段?

UPDATE:
我想這兩個領域單獨發佈,而不是在一個時間,因爲我希望他們在DB不同的記錄。所以會發生什麼是,我第一次發佈,點擊保存,然後出現字段的第二個實例(使用jQuery),單擊保存第二個字段集後,頁面應該再次發佈。

回答

0

val()只返回的第一個元素的值的集合中,如果你想所有的人,你必須把它們映射到一個數組

var values = $.map($(".myclass"), function(el) { 
    return el.value; 
}); 

$.ajax({ 
    type: "POST", 
    url: "/myfile.php", 
    data: {"myname": values}, 
}); 

如果它是一個形式,你也可以使用serialize()serializeArray()做同樣的事情。

+0

我希望他們單獨發佈,而不是一次發佈,因爲我希望他們成爲數據庫中的不同記錄。所以會發生什麼是,我第一次發佈,點擊保存,然後出現字段的第二個實例(使用jQuery),單擊保存第二個字段集後,頁面應該再次發佈。在這種情況下你的解決方案會起作用嗎 – user2828701

+1

@ user2828701 - 如果您在用戶做不同的事情時發送不同的值,那麼您必須確定在什麼時候發送值?您應該儘量減少對服務器的請求,因此循環訪問這些值併爲每個值發送請求是沒有意義的,除非發送發生在不同的時間?如果您正在考慮這樣做,請重新考慮,一次發送所有內容,然後在爲服務器創建不同的記錄之前在服務器側對其進行分類。 – adeneo

+0

謝謝,這給了我一些想法。 – user2828701

相關問題