【发布时间】:2015-07-05 09:33:32
【问题描述】:
我正在使用 JSON 发送 Ajax 数据。我正在从输入文本框中获取逗号分隔的手机号码。并且,我正在将其转换为 javascript 数组。
以下是我的代码:
var myarray = {};
myarray = this.model.get('mobileno').split(',');
结果 : myarray : ["123", "4567"];
我将为我的模型设置相同的值,如下所示:
this.model.set('mobileno',JSON.stringify(myarray ));
然后,值变成如下:
console.log(this.model.get('mobileno'));
结果 : mobileno : "["123","4567"]"
所以,我的模型变成了this.model.toJSON();
结果:对象 {mobileno: "["123","4567"]}
到这里为止,一切都是正确的。之后我需要将此模型设置为另一个模型并执行stringfy 会给我如下所示:
anotherModel.set('data', this.model);
"数据":{"mobileno":"[\"123\",\"456\"]"}
但是,我需要像 "data":{"mobileno":["123","456"]}
您的帮助将不胜感激。
【问题讨论】:
-
为什么要将数组转回 JSON?
-
在我的文本框中,我有逗号分隔的手机号码,如 9845098450,9845098451 等。当我从模型中得到这个时,我会得到像这样的“9845098450”、“9845098451”。我需要像 {data:{mobileno:["9845098450","9845098451"]}} 这样的请求,所以我怎么能做到这一点,
-
所以?为什么需要 JSON?
-
JSON 数组不是字符串。它们实际上是 JavaScript 数组。这是 JSON 的设计目标。因此,如果您需要 JavaScript/JSON 数组的字符串,请等到您完成构建数组后再将其字符串化。
标签: jquery json backbone.js