附加多维数组以形成数据

时间:2013-05-10 19:32:31

标签: php javascript jquery

好的,当有人提交数据时,我正试图将数据附加到现有表单。

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作为内部数组的数组键。

1 个答案:

答案 0 :(得分:2)

我很乐意提供帮助,如果你真的从“解决方案”迈出了一步。 解决方案是“暂停一会儿”,“喝咖啡/茶”,回到代码。但无论如何:

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

对我来说也一样。每次。很高兴我能提供帮助。