当前位置: 首页 > 工具软件 > form2js > 使用案例 >

js 操作form表单

葛承教
2023-12-01
js 操作form表单

	**获取表单对象**
		除了document.getElemetById("xx"); 等常规获取方式
		仅限于form的方式
			document.name值
				<form action="" method="get" id="fm" name="frm"></form>
				var frm=document.frm
	
	**获取form下的所有表单元素对象集合**
		只对表单元素有效(input、textarea、select),其他标签无效
		
	**form对象常用方法**
		form对象名.submit();  实现submit按钮功能提交数据,默认为一直提交;
		form对象名.submit(function(event){ event.preventDefault()..再写自己的ajax请求});
		使得数据只提交一次
		
		form对象名.reset();  将form表单内的内容全部重置为初始状态
		
		from对象名.serialize()
   		 在表单为ajax的post请求中get请求自动获取,将表单元素input、textarea和select属性中的name和value,以及被选中的多选框、单选框
    	 若选中则value为on,未选中则跳过,所有name和value按照键值对,以url中的参数格式&分割,写成字符串 
        1、 button无效
    
		from对象名.serializeArray(); 同serialize(),不过是将每对name和value存进对象中然后再放进数组里

	
	**form属性操作**
		form.action="xx";  提交地址
		form.method="xx";  提交方法
	
	**表单属性**
		disabled="disabled"  无法点击,也不会提交
		readonly="readonly"  只读
		onSubmit='回调',设置按钮属性type='submit',能触发回调事件

代码示例:

<html>
	<head>
		<meta charset="utf-8">
		<title>js 操作form</title>
		<script type="text/javascript">
			function t1()
			{
			//	var fm=document.getElementById("fm");
			//	alert(fm);
				/*form表单特殊操作*/
				var frm=document.frm;
			//	alert(frm);
				
				/*获取form表单对象集合*/
				alert(frm.elements.length);
				/*常用方法*/
				fm.submit();
				fm.reset();
				fm.action="http://www.baidu.com";
				fm.method="get";
			}
			
			
			
		</script>
	</head>
	<body>
		<input type="button" name="" id="" value="测试form" onclick="t1()" />
		<hr />
		<form action="" method="get" id="fm" name="frm">
			
			
		<b>用户名</b>:<input type="text" name="wd" id="uname" value="" readonly="readonly"/><br />
		密码: 	<input type="password" name="pwd" id="pwd" value="" disabled="disabled"/><br />
		<input type="submit" name="" id="" value="登录" />
		<input type="submit" name="" id="" value="登录" />
		<select name="" id="">
			<option value="">a</option>
			<option value="">b</option>
		</select>
		</form>
	</body>
</html>
 类似资料: