如果我有一些PHP逻辑导致:
$staus = "pass";
或:
$status = "fail";
然后在我的jQuery / Ajax中我有:
$(function() {
$( "#send" ).click(function(e){
e.preventDefault();
$( "#send" ).prop( "disabled", true );
$( ".loader" ).show();
$( "#send" ).html( "Sending <img src='img/ajax-loader.gif'>" );
var form_data = $( "#contact-form" ).serialize();
$.ajax({
type: 'POST',
url: 'send.php',
data: form_data
}).done(function(response) {
if(response.status == "pass")
// console log something here
但是当我尝试console.log数据时,我在谷歌Chrome控制台中得到“未定义”。
if($_POST) {
$message = "";
if(empty($_POST['first_name'])) {
$message .= "First name required<br/>";
}
if(empty($_POST['last_name'])) {
$message .= "Last name required";
}
if($message) {
echo "<div class='alert alert-danger'>" . $message . "</div>";
$pass = "error";
} else {
echo "<div class='alert alert-success'>Form submitted successfully</div>";
$pass = "succeed";
}
}
答案 0 :(得分:1)
试试这个:
$(function() {
$( "#send" ).click(function(e){
e.preventDefault();
$( "#send" ).prop( "disabled", true );
$( ".loader" ).show();
$( "#send" ).html( "Sending <img src='img/ajax-loader.gif'>" );
var form_data = $( "#contact-form" ).serialize();
$.ajax({
type: 'POST',
url: 'send.php',
dataType: 'json',
data: form_data,
success: function(json){
if(json['error'])
{
$('#your_notification_div').html("<div class='alert alert-danger'>" +json['message']+ "</div>")
}
else
{
$('#your_notification_div').html("<div class='alert alert-success'>"+json['message']+"</div>")
}
}
});
});
});
编辑验证PHP文件:
if($_POST) {
$json = array();
$message = '';
if(empty($_POST['first_name'])) {
$json['error'] = 'true';
$message .= "First name required<br/>";
}
if(empty($_POST['last_name'])) {
$json['error'] = 'true';
$message .= "Last name required";
}
if(!isset($json['error'])) {
$json['success'] = 'true';
$message = 'Form submitted successfully';
}
$json['message'] = $message;
echo json_encode($json);
}
答案 1 :(得分:0)
我猜是这样的:
<?php
$staus = "pass";
?>
<script>
const staus = <?php echo $staus?>
console.log(staus);
</script>
<?php
// PHP Code...
?>
&#13;
我在EJS(节点)中做了类似的事情
答案 2 :(得分:0)
在ajax响应中,您将获得PHP的所有回显值。如果您希望您的ajax为变量提供结果,那么您可以使用JSON数据类型来检索数组中的数据。有关详细信息,请参阅this链接