Prototype的ajax.updater中的动态对象参数名称

时间:2009-10-12 13:51:51

标签: javascript prototypejs

使用Prototype JavaScript库,我有这个

var panelItemId = 12345;

var param1 = 'expandPanel';    

var updater = new Ajax.Updater('myTarget','myUrl',{
              method: 'get',
              parameters: {
                    expandPanel: panelItemId

              }
            }   
        );

我想用变量param1替换参数对象中的expandPanel,因为在某些情况下我希望参数为'collapsePanel'。 panelItemId被计算为变量,但expandPanel被视为一个字符串。我想用param1的值替换它。如果我只输入param1而不是expandPanel,那么传递的第一个参数将被命名为param1,而不是命名为expandPanel。

我知道我可以通过构建查询字符串并将其用作参数参数来实现此目的。我更喜欢使用对象表示法,如上所述。

1 个答案:

答案 0 :(得分:0)

var panelItemId = 12345;
var param1 = 'expandPanel';    
var obj = {};
obj[param1] = panelItemId;
var updater = new Ajax.Updater('myTarget','myUrl',{
  method: 'get',
  parameters: obj
});