html 表单一定要用submit提交吗
<form>
<input type="text" id="txtName">
<a href="#" onclick="location.href='register.jsp?name='+getElementById('txtName').value">注册</a>
</form>
不过你最好你不要用这种方法,这个表单内容多将会很麻烦,谦submit丑,可以用CSS把它改漂亮的
通过HTML5的FormData来提交表单,这种表单的提交方式是异步的,浏览器的地址是不会发生变化的。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表单提交示例 - FormData</title>
</head>
<body>
<form name="login_form" action="/server_url" method="post">
ID:<input id="username" type="text" name="username" />
Password:<input id="password" type="password" name="password" />
</form>
<button id="btn-submit" onclick="beforeSubmit()">Submit</button>
<script type="text/javascript">
function beforeSubmit() {
var username = document.getElementById('username').value;
var password = document.getElementById('password').value;
if (username.length < 6 || password.length < 6) {
alert('格式不正确!');
return;
}
// 1.创建一个FormData对象,直接把我们的表单传进去
var formData = new FormData(document.forms.namedItem("login_form"));
// 2.创建一个http请求对象
var xmlHttpRequest = new XMLHttpRequest();
xmlHttpRequest.open('post', '/server_url');
xmlHttpRequest.onload = function(resp) {
if (xmlHttpRequest.status == 200) {
alert('提交成功!');
} else {
alert('Error:' + xmlHttpRequest.status);
}
};
xmlHttpRequest.send(formData);
}
</script>
</body>
</html>
<a href="#" onclick="mySubmit()">链接</a>
然后添加一个JavaScript函数mySubmit,如:
<script type="text/javascript">
function mySubmit(){
document.表单名称.submit();//表单提交action="register.jsp"
}
</script>
以上其实就是手动提交表单,和点击submit按钮道理一样。
<input type="submit" style="border:1px solid #999;background:#eee;font-size:12px;" name="提交" />
还可以增加背景什么的,只要是你能想到的样式,都可以加到按钮上