HTML标签 易混易错小总结

纠结了一天,终于把HTML标签的正确使用,各自的适用性清楚地了解了一下,这里简单总结一下以免再犯类似的错误。

一切都是由于这样的一个问题

<html>
<head>
</head>
<body>
	<form id="form1" method="get" >	
		用户名:<input type="text" id="name" name="name" />
		<p id="username"></p>
		<br />
		密码:<input type="password" id="password" name="password" />
		
		<button type="submit" οnclick="mUp()">登录</button>		
	</form>

	<script>
	window.x=document.getElementById("username");
	window.οnlοad=function()
	{
		document.getElementById('name').focus();
	}
	//
	function mUp()
	{	
		if(document.getElementById('name').value=="")
		{
			x.innerHTML = "用户名不能为空";
			//alert("不能为空");
		}
		else
			document.getElementById('form1').action="/login";
	}
	</script>	
</body>
</html>

将以上代码运行,当什么也不输入时电击“登录”按钮,会提示“用户名不能为空”,但是仅出现一下就会闪退。是什么原因呢?

关键是这里

<button type="submit" οnclick="mUp()">登录</button>	
此时会有两个事件触发,首先调用onclick对应的函数,然后再进行自动submit(因为此时type的类型为submit),自然会将提示覆盖掉。所以将type设置成button即可解决。

下面简单总结一下,

HTML <input> 标签的 type 属性

描述
button定义可点击按钮(多数情况下,用于通过 JavaScript 启动脚本)。
checkbox定义复选框。
file定义输入字段和 "浏览"按钮,供文件上传。
hidden定义隐藏的输入字段。
image定义图像形式的提交按钮。
password定义密码字段。该字段中的字符被掩码。
radio定义单选按钮。
reset定义重置按钮。重置按钮会清除表单中的所有数据。
submit定义提交按钮。提交按钮会把表单数据发送到服务器。
text定义单行的输入字段,用户可在其中输入文本。默认宽度为 20 个字符。
注:   type=button:就单纯是按钮功能 ;type=submit:是发送表单

HTML <button> 标签的 type 属性

描述
submit该按钮是提交按钮(除了 Internet Explorer,该值是其他浏览器的默认值)。
button该按钮是可点击的按钮(Internet Explorer 的默认值)。
reset该按钮是重置按钮(清除表单数据)。
未完待续……



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值