Ajax没有';不要发送数据
我正在学习使用。通过单击表单中的提交按钮,不会发送数据 Jquery代码:Ajax没有';不要发送数据,ajax,javascript,jquery,jquery-selectors,Ajax,Javascript,Jquery,Jquery Selectors,我正在学习使用。通过单击表单中的提交按钮,不会发送数据 Jquery代码: $('input[name="login"]').click(function() { var username = $('#username').val(); var password = $('#password').val(); $.ajax({ type: 'POST', url: '/?module=login&special_content=
$('input[name="login"]').click(function() {
var username = $('#username').val();
var password = $('#password').val();
$.ajax({
type: 'POST',
url: '/?module=login&special_content=true',
data:{'username':username,'password':password, 'action':'login'},
success: function(e) {
if(e == false)
{
}
else
{
document.location.href = e;
}
}
});
});
HTML代码:
<section style="width: 400px; margin: 10% auto; float: none;" id="box">
<section id="box-header">
<div id="box-title">%header_login%</div>
</section>
<section id="box-content" style="float: none;">
<form method="POST" action="./">
%login_username%<br>
<input type="text" style="width: 100%;" class="input" name="username" placeholder="%login_input_user%" required/><br>
%login_password%<br>
<input type="password" style="width: 100%;" class="input" name="password" placeholder="%login_input_pass%" required/><br>
<input type="button" id="login-button" style="width: 100%; box-sizing: border-box;" class="btn btn-red" name="login" value="%login_button%" />
</form>
<center><div style="margin-top: 5px;"> %login_or% <a href="?module=register">%login_signup%</a></div></center>
</section>
%标题\u登录%
%登录\用户名%
%登录密码%
%登录\u或%
错误在哪里?谢谢 您的问题是由选择器引起的
$(“#username”)
表示您想要一个id设置为“username”的元素
对于两个文本输入,分别将name=“username”
和name=“password”
更改为id=“username”
和id=“password”
。在代码中,用户名和密码不存在,因此.val()
返回空/空
将选择器更改为input[name=
将解决此问题
$('input[name="login"]').click(function() {
var username = $('input[name=username]').val();
var password = $('input[name=password]').val();
$.ajax({
type: 'POST',
url: '/?module=login&special_content=true',
data:{'username':username,'password':password, 'action':'login'},
success: function(e) {
if(e == false)
{
}
else
{
document.location.href = e;
}
}
});
});
使用devtools ass检查post请求,如图所示
这里的信息不够。您在调试方面走了多远?您是如何检查的?您可以使用浏览器的“网络”选项卡查看请求发出和响应返回。您还可以使用它查看JS代码$(“#用户名”)和$(“#密码”中是否有错误如果没有定义,您忘记了ID。服务器端代码是什么样子的?如果用户按“enter”而不是单击“submit”,您的ajax将被跳过,仅供参考。(许多用户都会这样做。)删除表单标记,或者将提交按钮改为type=“submit”并侦听表单的“提交”事件,而不是“提交”按钮的“单击”事件。谢谢,但仍然不发送数据。我添加了一个显示正在推送/删除的数据的sreenshot。