点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我正在发出Ajax GET请求并发送一个json对象。 我能够捕获xsjs中的字符串值,而对于数组,它表示未定义。 如何获取数组值? 代码如下:
Ajax呼叫:
在数据中:结果是一个数组。
$。ajax({
网址:getServiceUrl(" createUserTags.xsjs"),
类型:"获取",
数据:{" objectId":objectId," userId":oUserId," tagsArray":结果},
异步:否,
dataType:" json",
成功:函数(数据){
console.log(data);
}
});
在我的xsjs文件中:
var objectId = $ .request.parameters.get(" objectId");
var tagsArray = $ .request.parameters.get(" tagsArray"); //--------->我认为这就是问题所在
var userId = $ .request.parameters.get(" userId");
var conn = $ .db.getConnection();
尝试{
for(var c = 0; c //做某事.... } conn.commit(); $ .response.setBody('{" success":" true"}'); $ .response.headers.set(" Access-Control-Allow-Origin"," *"); $ .response.contentType =" application/json"; }抓住(e){ $ .response.setBody('{" Fail":"'+ tagsArray +'"}'); $ .response.headers.set(" Access-Control-Allow-Origin"," *"); $ .response.contentType =" application/json"; } 我得到的错误消息为{" Fail":" undefined"},如何获取tagsArray值? 谢谢 螃蟹
嗨Prab,
您可以通过在get调用中的参数名称中添加方括号来获取数组参数。
var tagsArray = $ .request.parameters.get(" tagsArray []");
这是必需的,因为在请求URL中,参数" tagsArray"被称为" tagsArray%5b%5d"(=" tagsArray []"),因为数组值。
最诚挚的问候,
Florian
嗨,Kapil,
从快速的观察中,我看到您正在发出POST请求,就像在xsjs中那样,您通过执行" var id = $。request.parameters.get(" ID");"来尝试获取所需变量。 适用于GET请求。
对于POST请求,请尝试如下xsjs中的内容:
var obj = $ .request.body.asString();
obj = JSON.parse(obj);
var itemId = obj.ID;
var firstName = obj.FirstName;
希望这会有所帮助。
嗨,
对于那些仍然参考此问题的人,我发现XS Classic Javascript库非常有用:
https://help.sap.com/ doc/3de842783af24336b6305a3c0223a369/2.0.03/zh-CN/index.html
最诚挚的问候,
Silviu
一周热门 更多>