2015-06-03 75 views
0

如何從ajax中的動態生成字段發送多個數據?從動態生成的字段發送多個ajax數據

由於我無法預先知道字段的數量,所以我使用了一個for循環,這對我不起作用。

$.ajax({ 
      type: 'GET', 
      data:{ 
       expectationPercentagePairId: JSON.stringify(expectationPercentagePairIds), 
       expectationScores: expectationScores, 
       for(var id in expectationPercentagePairIds){ 
        score-${id}: $("input[name='score-'+id]") 
       } 
      }, 
      url:'${g.createLink(controller:'review', action:'saveReview', params:[id: params.id])}' 
     }); 
+0

你可以將數據作爲數組/ json – Sherlock

+0

這些字段的名稱是不同的。我可以傳遞數據來自數據來自的字段的名稱? – Yet

+0

這個expectationPercentagePairIds的內容是什麼? – Sherlock

回答

1

一個循環不會在這裏工作。您可以使用序列化來傳遞所有表單數據,然後在後端處理數據。

$.ajax({ 
     type: 'GET', 
     data:{ 
      $('form').serialize() 
     }, 
     url:'${g.createLink(controller:'review', action:'saveReview', params:[id: params.id])}' 
    }); 
+0

就像我所說的,但他並不想那樣 – Sherlock

+0

非常感謝。它解決了。 – Yet

+0

@maku也許這是一個好主意,用example解釋 – tvgemert

0

如果您的動態生成的字段是一個靜態的父元素,你可以找到像$("#perantelem").find('input')所有的輸入,然後你可以用你的ID過濾器(比分 - $ {ID})和生成的key/value(名稱:值)數組或json