Ajax函数没有返回任何响应,但post工作正常:Wordpress
我有一个ajax脚本,可以在function.php中对函数执行操作,以便在提交表单后发送电子邮件。数据已发布,但功能未触发,因此电子邮件未发送,脚本也未显示任何响应Ajax函数没有返回任何响应,但post工作正常:Wordpress,ajax,wordpress,forms,function,email,Ajax,Wordpress,Forms,Function,Email,我有一个ajax脚本,可以在function.php中对函数执行操作,以便在提交表单后发送电子邮件。数据已发布,但功能未触发,因此电子邮件未发送,脚本也未显示任何响应 ==================Jquery==================== jQuery('#quote-forms').submit(function(e) { e.preventDefault(); var ocity = jQuery(".ocity").val(
==================Jquery====================
jQuery('#quote-forms').submit(function(e) {
e.preventDefault();
var ocity = jQuery(".ocity").val();
var ostate = jQuery(".ostate").val();
var ozip = jQuery(".ozip").val();
var dataString = 'custom ocity='+ ocity + '&custom ostate=' + ostate + '&custom ozip=' + ozip;
jQuery.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",
action : 'quote_ajax_submission',
data: dataString,
success: function() {
alert("sent");
}
});
});
这是我在function.php文件中的函数,请检查一下,让我知道问题所在,这样就不会有回复,也不会发送电子邮件
add_action('wp_ajax_quote_ajax_submission', 'quote_ajax_handler');
add_action('wp_ajax_nopriv_quote_ajax_submission','quote_ajax_handler');
function quote_ajax_handler(){
echo "helol";
$oCity = $_POST["custom ocity"];
$iZip = $_POST["custom ozip"];
$oState = $_POST["custom ostate"];
$dState = $_POST["dstate"];
$dZip = $_POST["dzip"];
$dCity = $_POST["dcity"];
$rNumbers = $_POST["room-numbers"];
$mDate = $_POST["mdate"];
$fName = $_POST["fname"];
$lName = $_POST["lname"];
$pEmail = $_POST["pemail"];
$pPhone = $_POST["pphone"];
$addtion_C = $_POST["additionC"];
$to = 'shoaibswl123@gmail.com';
$subject = 'Quote Request From '. $fName ;
$message = '<html><body>';
$message = '<div style="background:#CEE4ED; padding:10px;>';
$message = '<div style="margin-left:30px;">';
$message .= "<br>";
$message .= "<br>";
$message .= "<b>Hi Admin,</b>";
$message .= "<br>";
$message .= "<br>";
$message .= 'You have received a new quote from the site with the following information';
$message .= "<br>";
$message .= "<br>";
$message .= '<b>Address Information:</b>';
$message .= "<br>";
$message .= "<br>";
$message .= "<b>Origin City: </b>" .$oCity;
$message .= "<br />";
$message .= "<b>Origin Zip: </b>" . $iZip;
$message .= "<br />";
$message .= "<b>Origin State: </b>" . $oState;
$message .= "<br />";
$message .= "<b>Destination City: </b>" .$dCity;
$message .= "<br />";
$message .= "<b>Destination Zip: </b>" .$dZip;
$message .= "<br />";
$message .= "<b>Destination State: </b>" .$dState;
$message .= "<hr>";
$message .= "<br>";
$message .= "<br>";
$message .= '<b>Client Information:</b>';
$message .= "<br />";
$message .= "<br />";
$message .= "<b>First Name: </b>" .$fName;
$message .= "<br />";
$message .= "<b>Last Name: </b>" .$lName;
$message .= "<br />";
$message .= "<b>Primary Emai: </b>" .$pEmail;
$message .= "<br />";
$message .= "<b>Primary Phone: </b>" .$pPhone;
$message .= "<hr>";
$message .= "<br>";
$message .= "<br>";
$message .= '<b>Moving Information:</b>';
$message .= "<br>";
$message .= "<br />";
$message .= "<b>Moving Date: </b>" .$mDate;
$message .= "<br />";
$message .= "<b>Number of Rooms: </b>" .$rNumbers;
$message .= "<hr>";
$message .= "<br>";
$message .= "<br>";
$message .= '<b>Addition Comments :</b>';
$message .= "<br />";
$message .= '<p>'.$addtion_C.'</p>' ;
$message .= "<br>";
$message .= "<br>";
$message .= "<br>";
$message .= "<p>Thank you.</p>";
$message .= "</div></div>";
$message .= "</body></html>";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: '.$pEmail.'' . "\r\n";
if(wp_mail($to, $subject, $message, $headers)){
echo "<div class='success-message'>Message Has Been Sent Successfully..!</div>";
}else{
echo "<div class='success-message'>There is an error while sending message..!</div>";
}
die();
}
add_action('wp_ajax_quote_ajax_submission','quote_ajax_handler');
添加动作('wp\u ajax\u nopriv\u quote\u ajax\u submission','quote\u ajax\u handler');
函数quote_ajax_handler(){
回声“helol”;
$oCity=$_POST[“自定义oCity”];
$iZip=$_POST[“自定义分区计划大纲图”];
$oState=$_POST[“自定义oState”];
$dState=$_POST[“dState”];
$dZip=$_POST[“dZip”];
$dCity=$_POST[“dCity”];
$rNumbers=$_POST[“房间号”];
$mDate=$_POST[“mDate”];
$fName=$_POST[“fName”];
$lName=$_POST[“lName”];
$pEmail=$_POST[“pEmail”];
$pPhone=$_POST[“pPhone”];
$addition_C=$\u POST[“additionC”];
$to$shoaibswl123@gmail.com';
$subject='Quote请求来自'$fName;
$message='';
$message='ajax调用中的action元素存在问题
因此,我们对代码进行了如下更新,并在数据数组中添加了action元素,其工作如下:
jQuery.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",
data: 'action=quote_ajax_submission&'+dataString,
success: function(data) {
alert("sent");
},
error: function(request, status, error){
alert(request.responseText);
}
});
});
因此,在更新代码之前,action元素是这样的:
action : 'quote_ajax_submission',
在像这样更新代码操作之后
data: 'action=quote_ajax_submission&'+dataString,
ajax调用中的action元素存在问题
因此,我们对代码进行了如下更新,并在数据数组中添加了action元素,其工作如下:
jQuery.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",
data: 'action=quote_ajax_submission&'+dataString,
success: function(data) {
alert("sent");
},
error: function(request, status, error){
alert(request.responseText);
}
});
});
因此,在更新代码之前,action元素是这样的:
action : 'quote_ajax_submission',
在像这样更新代码操作之后
data: 'action=quote_ajax_submission&'+dataString,
您是否尝试过使用wp admin/admin-ajax.php的绝对路径而不是相对路径?此外,您应该始终在ajax调用中定义error函数,以便查看是否返回了错误而不是成功:error:function(jqXHR,exception){and console.log返回的错误有助于您进行调试。因此绝对路径如下?我添加了error函数,但它没有返回任何错误url:'ABSPATH./wp admin/admin ajax.php',@mirzapha是否尝试使用wp admin/admin-ajax.php的绝对路径而不是相对路径?此外,您应该始终具有error函数使用ajax调用定义,以便查看是否返回了错误而不是成功:error:function(jqXHR,exception){和console.log返回的错误以帮助您进行调试。因此绝对路径如下?我添加了error函数,但它不返回任何错误url:'ABSPATH./wp admin/admin ajax.php',@MirzaP