我知道这有很多重复,但不知何故这两个问题(我在堆栈溢出中搜索几乎所有相同的标题)工作。 我的问题是成功函数不会触发警报消息,我无法弄清楚原因。
<form>
<div class="form-group">
<label for="">Username</label>
<input type="text" class="form-control" id="user" name="user" placeholder="Username">
</div>
<div class="form-group">
<label for="">Password</label>
<input type="password" class="form-control" id="pass" name="pass" placeholder="Password">
</div>
<div class="form-group">
<label class="radio-inline">
<input type="radio" data-toggle="buttons-radio" name="optRadio" value="prof">Professor
</label>
<label class="radio-inline">
<input type="radio" data-toggle="buttons-radio" name="optRadio" value="admin">Admin
</label>
</div>
<button type="button" class="btn btn-block btn-social" onClick="validateForm()">
<span class="fa fa-twitter"></span>Login
</button>
</form>
javascript文件
function validateForm() {
var checkUser = document.getElementById("user").value;
var checkPass = document.getElementById("pass").value;
var checkOption = $("input[name=optRadio]:checked").val();
/*
if (checkUser && checkPass && checkOption) { //checks if user is not empty
} else {
alert ("Please fill up all information");
}
*/
if (checkOption == "prof") {
$.ajax({
type: 'POST',
url: 'assets/connection/login.php',
dataType: 'json',
data: {
user: checkUser,
pass: checkPass,
},
beforeSend: function() {
alert("a")
},
success: function(response) {
alert(response)
}
});
}
}
并且php文件只包含此
<?php echo "js test" ?>
编辑:正如评论和@ Rax Weber的回答所指出的,sucess
中存在一个印刷错误(应为{{1} } ),但这不是问题的根本原因,而且success
在纠正后仍然不会触发。
答案 0 :(得分:3)
原因是,您已设置dataType: 'json'
,但未获得JSON响应。
可能的解决方案:
以 JSON 发送回复。
在发布文件中,发送JSON编码输出:<?php echo json_encode("js test"); ?>
将dataType设置为default。从JS中删除行dataType: 'json'
。
答案 1 :(得分:1)
应该成功,而不是成功。
#include <stdio.h>
#include <stdlib.h>
int main() {
int date, month, year;
printf("Please enter the date in the form of dd/mm/yyyy: ");
if (scanf("%d/%d/%d", &date, &month, &year) == 3) {
printf("the date you entered was: %d-%d-%d\n", date, month, year);
} else {
printf("You have made an error\n");
}
return 0;
}
修改:问题已更新/修改。以前,它有一个语义错误,如上所述。