gpt4 book ai didi

javascript - Ajax 成功消息不起作用

转载 作者:行者123 更新时间:2023-12-03 10:18:38 25 4
gpt4 key购买 nike

我想提交表单而不刷新页面并在表单下显示成功/错误消息,以及在成功重置表单的情况下。但我想,我在 ajax 代码中做错了什么,php 工作正常。 Ajax :

$("#usignupform").validate({
submitHandler:function() {
var $form = $(form),
$messageSuccess = $('#mesSuccess'),
$messageError = $('#mesError');
$.ajax({
url: "investor-invite.php",
type: "POST",
data: $(this).serialize(),
complete: function(data) {
if (data.status == 'success') {
$messageSuccess.removeClass('hidden');
$messageError.addClass('hidden');

// Reset Form
$form.reset();

return;

} else {
$messageError.removeClass('hidden');
$messageSuccess.addClass('hidden');
}
}
});
return false;
}
});

PHP:

function NewUser(){ 
$data = mysql_query($query)or die(mysql_error());

if($data){
$response_array['status'] = 'success';
} else {
$response_array['status'] = 'error';
}
}
if(isset($_POST['submit'])){
NewUser();
}

HTML:

<form>
--all fields--

<button type="submit" name="submit" id="submitButton">
Request Invite</button>
<div class="alert alert-success hidden" id="mesSuccess">
<strong>Success!</strong> Your message has been sent to us.
</div>
<div class="alert alert-danger hidden" id="mesError">
<strong>Error!</strong> There was an error sending your message.
</div>
</form>

最佳答案

您需要回显 php 页面上的内容,然后这将返回成功消息。如果 php 文件或任何目标文件中有 html 或某些打印数据,Ajax 调用将获得响应。

尝试这样

    function NewUser(){ 
$data = mysqli_query($query)or die(mysql_error());

if($data){
$response_array['status'] = 'success';
}else {
$response_array['status'] = 'error';
}
return $response_array;
}
$data=NewUser();
echo json_encode($data);

并更新ajax函数

$("#usignupform").validate({
submitHandler:function() {
var $form = $(form),
$messageSuccess = $('#mesSuccess'),
$messageError = $('#mesError');
$.ajax({
url: "investor-invite.php",
type: "POST",
data: $(this).serialize(),
dataType: 'json', //add this to get the json response
complete: function(data) {
if (data.status == 'success') {

$messageSuccess.removeClass('hidden');
$messageError.addClass('hidden');

// Reset Form
$form.reset();


return;

} else {

$messageError.removeClass('hidden');
$messageSuccess.addClass('hidden');
}
}
});
return false;
}
});

更新请从您的代码中删除 Depriated mysql_* 并使用 mysqli_*pdo查询

关于javascript - Ajax 成功消息不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29745371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com