JQuery脚本在IE中不起作用

JQuery script is not working in IE

本文关键字:不起作用 IE 脚本 JQuery      更新时间:2023-09-26

我创建了以下JQuery脚本,它似乎适用于除IE8之外的所有浏览器。当我查看Internet Explorers错误详细信息时,我根本没有得到任何错误详细信息。IE只是指向我的JQuery文件,而没有显示受影响的代码行。有什么建议吗?我使用的是JQuery的1.4.4版本我的脚本在下面

    $(document).ready(function() {
        $("input[name='emailAddress']").blur(function() {
            // Actual Email Validation function
            $('#emailMessage').html("");
            var hasError = false;
            var emailaddressVal = $("input[name='emailAddress']").val().trim();
            var invalidEmailAddresses = ['goddady.com', 'aol.com', 'yahoo.com', 'yahoo.fr'];
            if(!isValidEmailAddres(emailaddressVal)) {
                $("<span id='emailMessage' class='LV_validation_message LV_invalid'>The email provided does not contain an @ symbol</span>").insertAfter("input[name='emailAddress']");
                hasError = true;
            } else {
                emailaddressVal = emailaddressVal.split('@').slice(1)[0].trim();
                if($.inArray(emailaddressVal, invalidEmailAddresses) >= 0) {
                    $("<span id='emailMessage' class='validation'>The email provided is not from a business related domain. Please use an appropriate email address instead.</span>").insertAfter("input[name='emailAddress']");
                } else {
                    $('#emailMessage').css('display', 'none');
                }
            }
            if(hasError == true) {
                return false;
            }
        });
        function isValidEmailAddres(emailID) {
            var regexExp = new RegExp(/^((([a-z]|'d|[!#'$%&''*'+'-'/='?'^_`{'|}~]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])+('.([a-z]|'d|[!#'$%&''*'+'-'/='?'^_`{'|}~]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])+)*)|(('x22)(((('x20|'x09)*('x0d'x0a))?('x20|'x09)+)?((['x01-'x08'x0b'x0c'x0e-'x1f'x7f]|'x21|['x23-'x5b]|['x5d-'x7e]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])|(''(['x01-'x09'x0b'x0c'x0d-'x7f]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF]))))*((('x20|'x09)*('x0d'x0a))?('x20|'x09)+)?('x22)))@((([a-z]|'d|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])|(([a-z]|'d|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])([a-z]|'d|-|'.|_|~|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])*([a-z]|'d|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])))'.)+(([a-z]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])|(([a-z]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])([a-z]|'d|-|'.|_|~|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])*([a-z]|['u00A0-'uD7FF'uF900-'uFDCF'uFDF0-'uFFEF])))'.?$/i);
            return regexExp.test(emailID);
        }
    });

我怀疑.trim(),因为它在<IE8.你最好使用jQuery.trim(),因为你无论如何都在使用jQuery。例如:

var emailaddressVal = $.trim($("input[name='emailAddress']").val());