代码之家  ›  专栏  ›  技术社区  ›  Mark Chorley

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

  •  0
  • Mark Chorley  · 技术社区  · 16 年前

    通过使用原型JavaScript库,我得到了

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

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

    我知道我可以通过构建querystring并将其用作参数参数来实现这一点。我更喜欢使用对象表示法,如上所述。

    1 回复  |  直到 16 年前
        1
  •  1
  •   Marius    16 年前
    var panelItemId = 12345;
    var param1 = 'expandPanel';    
    var obj = {};
    obj[param1] = panelItemId;
    var updater = new Ajax.Updater('myTarget','myUrl',{
      method: 'get',
      parameters: obj
    });