0
我想讓一個json調用響應在IE中工作,但沒有發生。目前它在其他瀏覽器中工作正常。jQuery的Ajax調用不工作在IE瀏覽器,JSON響應沒有通過
我已經閱讀了很多地方,ajax和IE有一些常見問題,但沒有一個解決方案有幫助。我也試過使用$ .ajaxSetup({cache:false});但是這並沒有解決它,它似乎與緩存沒有任何關係。
任何幫助,我高度讚賞。
該代碼被粘貼。
JS:
$(document).on("submit", ".loginForm", function(event) {
event.preventDefault();
var url=$(this).attr("action");
$.ajax({
url: url,
type: 'POST',
data: new FormData(this),
processData: false,
contentType: false,
datatype: "json",
success: function (data, status)
{
if(data.success == "success"){
window.location.replace("dashboard.php");
} else {
$('#loginResponse').html(data.success).css("color", "red").fadeIn().delay(2000).slideToggle();
}
}
});
});
PHP:
header("Content-Type: application/json", true);
if(isset($_POST['submit_login'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$sql = 'SELECT user_id, first_name, password FROM arbor_admin_users WHERE username=?';
$stmt = $connection->prepare($sql);
$stmt->bind_param('s', $username);
$stmt->bind_result($uid, $fn, $pwhash);
$stmt->execute();
$stmt->store_result();
if($stmt->num_rows > 0) {
while($stmt->fetch()){
// if ($password === $pw) {
if (password_verify($password, $pwhash)) {
session_start();
$_SESSION['logged_in'] = $uid;
$_SESSION['firstname'] = $fn;
// header("Location: ../dashboard.php");
echo json_encode(array('success'=>"success"));
exit();
} else {
echo json_encode(array('success'=>"Wrong username or password!"));
}
}
} else {
echo json_encode(array('success'=>"Wrong username or password!"));
}
}
'什麼是happening'沒有錯誤控制檯?請求發送還是什麼?只有在IE瀏覽器?哪個IE版本?瀏覽器緩存怎麼樣?檢查至少比提交事件被解僱 –
控制檯給了我什麼都沒有,是的..只有IE瀏覽器,到目前爲止,它似乎是所有的IE版本,在其他瀏覽器,它的工作完美..而且它不是緩存沒有:( –
我的意思是瀏覽器的緩存,這意味着你必須清除瀏覽器緩存(ctrl + F5,如果我是正確的),我不是在談論緩存的請求,你還可以檢查而不是提交事件被解僱嗎?! –