Jquery ajax - 将params作为变量传递

时间:2012-05-16 19:12:07

标签: ajax jquery

我有一个ajax调用(使用黑莓webworks api [但我不认为这个位是相关的])。

目前我正在发送这样的参数:

params: {
   user: userId,
   sid: sessionKey,
   db: dbId,
   urn: activeRecord
},

我想构建params(有时我不需要它们,我不想发送空白数据)。

但是,如果我尝试构建一个字符串并发送该程序错误。

EG:

如果我尝试构建这样的参数,则会出现错误:

var myParams ="";

if(userId != ""){
   myParams != "user:" + userId + ",";
}

if(sessionKey != ""){
   myParams != "sid:" + sessionKey + ",";
}


myParams = myParams.slice(-1);

然后尝试在调用中添加params,如下所示:

params: { myParams },

有什么想法吗?

3 个答案:

答案 0 :(得分:2)

我认为这就是你所追求的:

$.ajax({
    type: 'GET',
    url: 'INPUT URL HERE',
    data: {
        user: userId,
        sid: sessionKey,
        db: dbId,
        urn: activeRecord
    },
    success: function(response)
    {
        // Do stuff.
    }
});

答案 1 :(得分:0)

是你的问题吗?

if(userId != ""){
   myParams = "user:" + userId + ",";
}

if(sessionKey != ""){
   myParams = "sid:" + sessionKey + ",";
}

答案 2 :(得分:0)

感谢帮助人们,欣赏它,终于想通了。问题是我试图将变量添加到一个无效的对象中。这样做的方法是:

//create the object
var myParams = {};

//add variables (if statements are fine here)
myParams.user = userId;
myParams.sid = sessionKey;

然后,当您需要使用它时,您可以像这样添加它:

params: myParams,