您的位置:首页 > Web前端 > HTML

HTML中关于表单的提交

2016-11-16 21:49 246 查看
总结一下HTML中关于表单的提交,在用户登录的时候一般都是通过表单提交,获取账号密码然后交给后端,目前主要提及三种提交表单的方式:html默认方式和js控制下的两种方式。

1.直接用html的默认方式提交

<form  action="/login" method="post" id="form">
<input type="text" name="username" class="username" placeholder="请输入您的用户名!">
<input type="password" name="password" class="password" placeholder="请输入您的用户密码!">
<input type="submit" class="submit_button" id="submit_button" value="登录">
<button type="reset" class="reset_button">重置</button>
</form>


这一种提交方式无话可说,需要注意的是form标签内的 action属性负责提交的地址,method是提交的方式(get/post)。

2. 使用jquery进行控制

有时候我们需要对账号密码的输入进行控制,比如要判断输入框是否为空,为空的话进一步提醒用户。为了方便使用jQuery进行操作,如下:

$(document).ready(function () {
$("#submit_button").click(function () {
var username = $('.username').val();
var password = $('.password').val();
if (username == '') {
alert("请输入账号");
return false;
}

else {
if (password == '') {
alert("请输入密码");
return false;
}
else
$('#form').submit();
}
});
});


注意一点就是如果不符合要求的话最后要返回false,不然弹出对话框之后还是会提交,关于这一点的原理之后再补,先挖坑。

3.使用ajax进行提交

同样使用jQuery,代码如下

$(document).ready(function () {
$("#submit_button").click(function () {
var username = $('.username').val();
var password = $('.password').val();
alert(username + ' \n' + password);
$.post(
'{{ url_for('main.login') }}',
{username: username, password: password},
function () {
window.location.href = 'http://www.baidu.com';});
});

});


注意post方法的格式 $.post(url, data , callback()),使用flask时后端进行的重定向,但是前端页面并没有跳转,原因可能是ajax本身对于页面的控制,或者说ajax的特性并不能使页面进行跳转,解决方法是 callback()函数中可以设置对页面进行跳转。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: