我在为输入标签的值设置数组时遇到问题
function SetSelectInputValue($selectInput, item, addOrRemoveState) {
debugger;
var dataValuesArray = [];
dataValuesArray.push(item);
$selectInput.attr('data-value', dataValuesArray);
}
设置dataValuesArray
好data-value
我的输入后,我希望得到一个包含下面代码的数组结果,但是结果只是一个用“,”分隔的字符串
$selectInput.attr('data-value');
result => *"8f15657b49654662b2b01124cd163962,07ea34cb2e594f14ad98d26f7836cf05"*.
我想设置并获取此=>
["8f15657b49654662b2b01124cd163962", "07ea34cb2e594f14ad98d26f7836cf05"]
输入值。
那么,为什么将数组设置为输入值后,数组却变成由','分隔的字符串?
尝试使用JSON.stringify()
方法将数组转换为JSON字符串:
$selectInput.attr('data-value', JSON.stringify(dataValuesArray));
下面的示例代码(Asp.net核心MVC应用程序,并使用默认的_Layout页面):
<div class="form-group">
<input id="text" class="form-control" />
</div>
@section Scripts{
<script>
$(function () {
var array = [];
array.push("AAA");
array.push("BBB");
$("#text").val(JSON.stringify(array));
$("#text").attr('data-value', JSON.stringify(array));
})
</script>
}
然后输出如下:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句