gpt4 book ai didi

javascript - 在 Ajax 成功函数中没有得到响应

转载 作者:太空宇宙 更新时间:2023-11-04 16:02:51 24 4
gpt4 key购买 nike

我是 PHP 和 WordPress 新手。在这里,我使用 Ajax 调用来提交表单信息,作为响应,我想要一条位于 <div> 中的感谢消息。部分。在此代码中,我能够执行 function.php 中的函数,但无法获取响应。函数或wordpress插入查询有问题吗?你能告诉我我做错了什么吗?请帮我。预先感谢您。

<script type="text/javascript">
$('#reg-form').submit(function () {
var name = $('#name').val();
var email = $('#signup-email').val();
var password = $('#password').val();
jQuery.ajax({
url: ajaxurl,
type: "POST",
dataType: 'json',
data: {
'action': "registration",
'name': name,
'email': email,
'password': password
},
success: function (response) {
alert("hi");
$("#signup-thanks").show();
$("#signup").hide();

}
});
});
</script>

<div class="col-sm-5 " style="margin-top: 1em" >
<div id="signup">
<form id="reg-form" method="post" >
<div class="row">
<div class="col-sm-offset-1 col-sm-10 form-group col-xs-offset-1 col-xs-10" id="form">
<input type="text" class="form-control form-text" id="name" name="organization_name" placeholder="name of NGO" required >
</div>
</div>
<div class="row">
<div class="col-sm-offset-1 col-sm-10 form-group col-xs-offset-1 col-xs-10" id="form">
<input type="email" class="form-control form-text" id="signup-email" name="email" placeholder="email" required >
</div>
</div>
<div class="row">
<div class="col-sm-offset-1 col-sm-10 form-group col-xs-offset-1 col-xs-10 " id="form">
<input type="password" class="form-control form-text" id="password" name="password" placeholder="password" required="" />
</div>
</div>

<div class="row">
<div class="col-sm-offset-1 col-sm-10 col-xs-offset-1 col-xs-10" id="btnn">
<button class="btn btn-success button-def form-text btn-font " id="registration" type="submit" name="go">Sign Up Free</button>
</div>
</div>

</form>
</div>
<div class=" row" id="signup-thanks">
<div class="col-sm-offset-1 col-sm-10 col-xs-offset-1 col-xs-10 signup-thanks-box " style="text-align: center; display: none;">
<p class=" thanks-font" style="font-size: 32px;">Thanks for signing up.</p>

<p class="font-body"> This means we'll work harder so you can start using this product.</p>
</div>
</div>
<小时/>
function registration()
{
global $wpdb;
$name = $_POST['name'];
$email = $_POST['email'];
$password = $_POST['password'];
try
{
$b = $wpdb->query("INSERT INTO `wp_registration`(`reg_ngo_name`, `reg_email_id`, 'reg_password') VALUES ('$name', '$email', '$password')");
// $wpdb->insert( 'wp_registration', array('reg_ngo_name' => $name, 'reg_email_id' => $email, 'reg_password' => $password) , array( '%s', '%s', '%s') );
print json_encode($b);
}
catch (Exception $e)
{
print json_encode("error occured" . $e);
}
exit();
}

add_action('wp_ajax_registration', 'registration');
add_action('wp_ajax_nopriv_registration', 'registration');

最佳答案

我已经用我的简单代码替换了您的 jquery 和functions.php 代码。

希望这能解决您的问题。

jQuery 代码

<script type="text/javascript">
$('button#registration').click(function(e) {
e.preventDefault();
var name = $('#name').val();
var email = $('#signup-email').val();
var password = $('#password').val();
var data = {
'action': 'registration',
'name': name,
'email': email,
'password': password
};
var ajaxurl = "<?php echo admin_url('admin-ajax.php'); ?>";
jQuery.post(ajaxurl, data, function (response) {
alert("hi");
$("#signup-thanks div").show();
$("#signup").hide();
});

});

</script>

这是你的functions.php代码。

function registration(){  
global $wpdb;
$name = $_POST['name'];
$email = $_POST['email'];
$password = $_POST['password'];
$table_name = $wpdb->prefix . 'registration';
$sql = "INSERT INTO $table_name (reg_ngo_name,reg_email_id,reg_password) VALUES
('".$name."', '".$email."','".$password."')";
$wpdb->query($sql);
exit;
}
add_action('wp_ajax_registration', 'registration');
add_action('wp_ajax_nopriv_registration', 'registration');

关于javascript - 在 Ajax 成功函数中没有得到响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42133851/

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