Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在json对象中注入字符串_Javascript_Jquery_Json - Fatal编程技术网

Javascript 在json对象中注入字符串

Javascript 在json对象中注入字符串,javascript,jquery,json,Javascript,Jquery,Json,在java脚本中,我创建了一个json变量 var Token = { "TagItem": { "TagList": [tags] } }; 标签在哪里 "AA","BB","CCC","DDDD" 我使用ajax调用asp mvc控制器,并将json发送到一个方法。 理想化的json对象是 public class TagItem { public List<string> TagList { get; set; } } 这很有效 关于如何用js编写的想法? [tag

在java脚本中,我创建了一个json变量

var Token = { "TagItem": { "TagList": [tags] } };
标签在哪里

"AA","BB","CCC","DDDD"
我使用ajax调用asp mvc控制器,并将json发送到一个方法。 理想化的json对象是

public class TagItem
{
   public List<string> TagList { get; set; }
}
这很有效

关于如何用js编写的想法?

[tags]
将创建一个仅包含一个元素tags的数组

如果
标记
是逗号分隔的字符串,如
“AA、BB、CCC、ddddd”
,则可以使用
.split
将其转换为数组

var Token = { "TagItem": { "TagList": tags.split(',') } };
var tags = $('#myTags input[name="tags"]').map(function(){
    return $(this).val();
}).get();

var Token = { "TagItem": { "TagList": tags } };

更新:在看到您发布的屏幕截图()后,我看到了这里的真正错误。这就是您创建标签的方式

您不需要添加
,或
。您只是在构建一个数组/一个对象,而不是在构建一个字符串。
。map
返回一个数组,无需使用
将其转换为字符串。join
,将其用作数组即可

var Token = { "TagItem": { "TagList": tags.split(',') } };
var tags = $('#myTags input[name="tags"]').map(function(){
    return $(this).val();
}).get();

var Token = { "TagItem": { "TagList": tags } };

注意:
标签周围没有
[]
。这是因为它已经是一个数组,不需要将它添加到另一个数组。

嗯?我一点也不明白!你的问题是什么?你想在这里做什么?
[“AA”、“BB”、“CCC”、“DDDD”]
是一个数组,其中包含多个值。这不是您想要的吗?什么是
公共列表标记列表
?这不是JavaScript代码!这个问题没有意义。谢谢。添加了详细信息。
var data={“tagItem”:{“TagList”:[“AA”、“BB”、“CCC”、“ddddd”]}这是js。你已经写过了。PS:这不是JSON,它是一个javascript对象,
tags
?你到底怎么调用那个控制器?@rails:你是如何生成
tags
?你能控制它吗,还是不能?如果是的话,你可以把它们一个一个地添加到数组中。不,这有相同的结果列表中的.1项。@rails:tags
到底是什么?
console.log(tags)
console.log(tags.split(','))
show?@rails:我从这个屏幕截图中看到了很多代码问题。@rails:.map
,为什么要在字符串周围添加引号?还有,为什么要使用
.join(',')
?只需使用map函数
返回$(this).val()
,而不使用
。join
,只需使用
标记作为数组。
var tags=$('#myTags input[name=“tags”]).map(function(){return$(this).val()).get();var Token={“TagItem”:{“TagList”:tags};
您正在构建一个JavaScript对象,而不是JSON字符串,您不需要添加
s.@rails:现在检查我的答案:)