说我有一个数组像这样在Javascript:如何将项目添加到嵌套数组?
var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] }
在Javascript中我可以用什么命令添加到输入...例如一个项目,如果我想有一个文本框,用户可以将文本放入,然后点击一个按钮,将项目添加到数组中。将添加的项目需要与“camry”和“etc”相同的项目放入。谢谢!
说我有一个数组像这样在Javascript:如何将项目添加到嵌套数组?
var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] }
在Javascript中我可以用什么命令添加到输入...例如一个项目,如果我想有一个文本框,用户可以将文本放入,然后点击一个按钮,将项目添加到数组中。将添加的项目需要与“camry”和“etc”相同的项目放入。谢谢!
尝试像
cars.vendor[0].type.push("foo");
其中 “富” 是你的数据的补充。
您可以使用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 Objects和Arrays的嵌套结构,使用文字语法声明。有关更多信息,请参阅Javascript object Vs JSON。
+1给出了很好的参考™。 – PPvG 2012-01-13 14:16:46
详情如下问题样品测试例如:
<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>
在这里唤醒恐龙,但如果没有定义“类型”,这意味着用户第一次登陆页面并希望动态构建供应商对象会怎么样? – HPWD 2017-10-03 17:45:46
你可以尝试像下面
var cars = { vendor: [ { type: [ 'camry', 'etc' ] } ] } ;
cars.vendor[0].type[2]="abc";
谢谢...这完美的作品! – amlane86 2012-01-13 14:34:16
不客气:) – jack 2012-01-15 14:45:17