假设我在Javascript中有一个这样的数组:
var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] }
在Javascript中我可以使用什么命令添加要键入的项...例如,如果我想要一个用户可以放入文本的文本框,然后点击一个按钮将该项添加到数组中。要添加的项目需要与“camry”和“etc”相同的项目放置。谢谢!
答案 0 :(得分:14)
尝试类似
的内容cars.vendor[0].type.push("foo");
“foo”是您要添加的数据。
答案 1 :(得分:7)
您可以使用push()
方法将项目添加到数组中,或添加到unshift()
以添加到前端。
var newValue = 1234;
cars.vendor[0].type.push(newValue);
然后可以使用与此类似的东西绑定事件处理程序;
$("yourSelector").on("click", function(){
var value = $("input").val();
cars.vendor[0].type.push(value);
});
请请记住,你拥有的不是JSON。它是使用文字语法声明的JavaScript对象和数组的嵌套结构。有关详细信息,请参阅Javascript object Vs JSON。
答案 2 :(得分:1)
此问题的示例测试示例如下:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(document).ready(function(){
var cars = {
"vendor": [
{
"type": [
"camry",
"maruti",
"bmw"
]
}
]
};
$("#add").click(function(){
var types=cars["vendor"][0]["type"];
types.push($("#json").val());
$("#types").html(types.toString());
});
});
</script>
</head>
<body>
<input type="text" id="json" name="json"/>
<input type="button" id="add" name="add" value="ADD"/>
<div id="types" style="margin:10px;border:1px dotted green;width:400px;"></div>
</body>
</html>
答案 3 :(得分:-1)
您可以尝试下面给出的内容
var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] } ;
cars.vendor[0].type[2]="abc";