js数组生成json数据 js二维数组的创建

以下是一段html源代码:





以下是一段jquery语句:



如果您试图将源码复制去运行,您可能还需要加载一个bootstrap的js文件


今天的重点是关于js的数组如何创建出二维数组,并且如何将数组转换为JSON数据,这可能会很容易,毕竟网上资料也不少:

//以下这段源码包含了今天的主要内容,详细请看注解
//当点击模型的关闭按钮时发生以下事件
$('#menu_close2,#menu_close22').click(function(){
	//创建一个空数组
	var arr = new Array();

	//遍历id=tree2这个元素的一级子元素
	$('#tree2 > div:gt(0)').each(function(i){
	
		//创建第二个空数组
		var brr = new Array();
		
		//从某个子元素的子元素里面提取input元素,并且排除类型为checkbox的元素
		$(this).find('input:not([type="checkbox"])').each(function(e){
			//这里需要清除第一个input元素中没有数据的整个循环
			if(e == 0 && $(this).val() == '')
			{
				//跳出整个each循环
				return false;
			}

			//将这个子元素中所有input数据存储在brr数组中
			brr[e] = $(this).val();
		});

		//将brr数据存储在arr数组中,形成js的二维数组
		arr[i] = brr; 
	});
	
	//将arr数组转换为JSON数据
	var strify = JSON.stringify(arr);

	//如果JSON数据不为空
	if(strify != '[[]]')
	{
		//将JSON字符串放入指定的input中
		$('#materialtext').val(strify);
	}
});


js不能直接创建二维数组,需要通过中介变量进行转换,效果还是有的,这点毋庸置疑

至于转JSON这个方法只是附带的,有兴趣可以研究

喜欢bootstrap的,可以关注网站:http://www.runoob.com/bootstrap/bootstrap-modal-plugin.html

你可能感兴趣的:(js/jquery,html+css)