2013-05-10 42 views
2

好吧我試圖在有人提交數據時將數據附加到現有表單。追加多維數組以形成數據

function submitCustOpts() { 
var custoptsids=new Array(".implode(",",$optids)."); 
var pfrm=document.forms['promotion".$promo_data["promo_id"]."']; 

for(var i in custoptsids) { 
    selectedVal = $('#'+custoptsids[i]).val(); 

    var input = $('<input>').attr(
    { 
     type: 'hidden', 
     name: 'cf_'+custoptsids[i], 
     value: selectedVal 
    }).appendTo(pfrm); 
} 
pfrm.submit(); 
} 

所有作品。所以只是忽略了上半場。我無法將它添加到表單中。 custoptsids [i]包含id,selectedVal包含該值。這一切都很花哨,但我需要把它放在一個多維的陣列中。 現在它提出這樣的:

<!-- REQUEST: Array 
(
    [promo_id] => 164792 
    [station_id] => 2478 
    [lang] => en 
    [cf_28] => 55 
    [cf_29] => 61 
    [PHPSESSID] => 375ee178f5de3blahblahblah 
) 
--> 

當它應該是這樣的:

<!-- REQUEST: Array 
(
    [promo_id] => 164792 
    [station_id] => 2478 
    [lang] => en 
    [cf] => Array 
     (
      [28] => 55 
      [29] => 60 
     ) 

    [PHPSESSID] => 375ee178f5de3blahblahblah 
) 
--> 

所以我的問題是怎麼做的,我把這些值插入CF陣列.. cf_28應該只是比照與28和29作爲內陣列陣列鍵..

+2

也許我錯過了somehing,但不應該「名稱:'cf_'+ custoptsids [i]」而不是「名稱:'cf ['+ custoptsids [i] +']'」? – sixFingers 2013-05-10 19:35:34

+0

Omg ...你是最棒的!!!!!!!謝謝!我不敢相信我忽略了這一點。我想這就是你連續9個小時編程所得到的結果x_x – Peanut 2013-05-10 19:42:23

+0

你想繼續並回答它,我會標記你回答正確嗎? =) – Peanut 2013-05-10 19:44:27

回答

2

我很高興地幫助,如果你真的從「解決方案」的一步。 解決方案是「暫停一會兒」,「喝杯咖啡/茶」,回到代碼。但無論如何:

var input = $('<input>').attr(
{ 
    type: 'hidden', 
    // name: 'cf_'+custoptsids[i], <- look twice :) 
    name: 'cf['+custoptsids[i]+']', 
    value: selectedVal 
}).appendTo(pfrm); 

它對我來說也是一樣。每次。很高興我能幫上忙。

+0

再次感謝你<333是的,我還沒有吃過午餐,但我現在正在吃東西=)我似乎沒有休息,直到我得到它的工作,但我應該嘗試更頻繁地這樣做:P – Peanut 2013-05-10 19:57:53