所以Internet Explorer再次这样做。我目前有一个validation.php
文件,其中文本框中的值被发送以进行验证。读取文本框值,然后给出结果,说明这是否有效。这适用于任何其他浏览器,但IE。 ajax请求具体不起作用。任何帮助,将不胜感激。下面的脚本负责从输入框中获取数据并通过AJAX发送请求。
$(document).ready(function () {
$("#email").blur(function () {
var username = $(this).val();
if (username == '') {
$("#availability").html("Empty Input");
}
else{
$.ajax({
url: "validation.php?uname="+username
}).done(function( data ) {
if (data.includes("result-from-validation")){
//DO SOMETHING
}
else {
// DISPLAY ERROR
}
});
}
});
});
答案 0 :(得分:5)
两个问题:
username
确实应该在作为URI的一部分发送之前进行URI编码:url: "validation.php?uname="+encodeURIComponent(username)
(或者让jQuery通过传递data: {uname: username}
来实现)。< / p>
Array#includes
和String#includes
都是JavaScript中的新功能。老式浏览器没有它们就不足为奇了。
如果需要,两者都可以填充(请参阅上面的链接),或者您可以使用indexOf
:if (data.indexOf("result-from-validation") != -1)