Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.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数组打印为HTML,方括号和引号保持不变_Javascript_Html - Fatal编程技术网

将JavaScript数组打印为HTML,方括号和引号保持不变

将JavaScript数组打印为HTML,方括号和引号保持不变,javascript,html,Javascript,Html,我想用一个值数组设置输入表单的属性,用于自动完成搜索。我有一个JS数组,看起来有点像这样: var suggestions = ["value1", "value2", "value3"]; 使用jQuery,我做到了这一点: $("#search-input").attr("data-source", suggestions); 期望输出: <input type='search' data-source='["value1", "value2", "value3"]' />

我想用一个值数组设置输入表单的属性,用于自动完成搜索。我有一个JS数组,看起来有点像这样:

var suggestions = ["value1", "value2", "value3"];
使用jQuery,我做到了这一点:

$("#search-input").attr("data-source", suggestions);
期望输出:

<input type='search' data-source='["value1", "value2", "value3"]' />
实际产量:

<input type='search' data-source='value1, value2, value3' />
这会中断自动完成,因为它需要一个数组,或者至少需要一些看起来像JavaScript数组的东西。

使用

$("#search-input").data("source", suggestions);
因为这个

$("#search-input").attr("data-source", suggestions);
将属性值(即数据源字符串)设置为suggestions.toString的结果,当然是

"value1,value2,value3"
FWIW,这也将是正确的,尽管不必要的复杂:

$("#search-input").attr("data-source", JSON.stringify(suggestions) );
使用

因为这个

$("#search-input").attr("data-source", suggestions);
将属性值(即数据源字符串)设置为suggestions.toString的结果,当然是

"value1,value2,value3"
FWIW,这也将是正确的,尽管不必要的复杂:

$("#search-input").attr("data-source", JSON.stringify(suggestions) );

一个快速可行的解决方案是

$("#search-input").attr("data-source", JSON.stringify(suggestions));

一个快速可行的解决方案是

$("#search-input").attr("data-source", JSON.stringify(suggestions));
您可以只使用方法来创建数组

 suggestions.split(",");

 'value1, value2, value3'.split(","); // ["value1", " value2", " value3"]
您可以只使用方法来创建数组

 suggestions.split(",");

 'value1, value2, value3'.split(","); // ["value1", " value2", " value3"]