Ajax Post类型不会将数据发送到php页面
我有下面的表单供用户重置密码,它位于根目录中的遗忘.php文件中Ajax Post类型不会将数据发送到php页面,php,jquery,ajax,Php,Jquery,Ajax,我有下面的表单供用户重置密码,它位于根目录中的遗忘.php文件中 <form id="pass_form" action="" method="post" name="pass_form"> <label>Username:</label> <input type="text" class="blank" name="name" id="name" value="Trader Username" data-default="Trader User
<form id="pass_form" action="" method="post" name="pass_form">
<label>Username:</label>
<input type="text" class="blank" name="name" id="name" value="Trader Username" data-default="Trader Username" data-message="Please enter your username..."> *<br>
<input class="sub-btn" type="submit" value="Submit">
</form>
用户名:
*
我想将用户名发布到inc/sendreset.php,因此在js/scripts.js中有以下Ajax
$("#pass_form").validator({
offset: [0, 354],
position: 'center left',
messageClass: 'conerror'
}).submit(function(e) {
if (!e.isDefaultPrevented()) {
var form = $(this);
var serdata = form.serialize();
$.ajax({
type: "POST",
url: "sendreset",
data: serdata,
cache: false,
success: function (html) {
log('inside ajax sendreset', this, arguments);
$('#pass_form').fadeOut(400,function(){
if (html=="0") {
} else {
$('#pass_form').html('<p>The password reset instructions have been sent. Please check your email.</p>');
}
$('#pass_form').fadeIn();
});
},
error: function (err) {
log('error inside ajax sendreset', this, arguments);
}
});
//$('#pass_form').fadeOut(400);
e.preventDefault();
}
});
$(“#通过表单”).验证程序({
偏移量:[0354],
位置:'中间偏左',
messageClass:'conerror'
}).提交(职能(e){
如果(!e.isDefaultPrevented()){
变量形式=$(此);
var serdata=form.serialize();
$.ajax({
类型:“POST”,
url:“发送重置”,
数据:serdata,
cache:false,
成功:函数(html){
日志('INDER ajax sendreset',this,arguments);
$(“#通过形式”).fadeOut(400,function(){
如果(html==“0”){
}否则{
$(“#传递表单”).html(“密码重置说明已发送。请检查您的电子邮件。”);
}
$(“#通过表单”).fadeIn();
});
},
错误:函数(err){
日志('ajax sendreset内部错误',此,参数);
}
});
//$('pass#u form')。淡出(400);
e、 预防默认值();
}
});
但是,它似乎没有将用户名发布到文件中。inc/sendreset.php如下所示
<?php
require_once('./library.php');
require_once('./PHPMailer/class.phpmailer.php');
$Trader = new CompanyTrader();
$resetdata = $Trader->resetTrader($_POST['name']);
print_arr($resetdata);
//more php which isn't relevant
?>
我真的认为这是错误的:
url: "sendreset",
尝试使用相对或绝对url,如http://mysite.com
为什么要将url=“sendreset”而不是“inc/sendreset.php”?我没有输入绝对url的原因是我在htacces中重写了url,但不知何故删除了inc/sendreset.php的规则。你的评论引起了我的注意。谢谢