Javascript jQuery检查文件扩展名在IE中不起作用

Javascript jQuery检查文件扩展名在IE中不起作用,javascript,jquery,internet-explorer,file-upload,Javascript,Jquery,Internet Explorer,File Upload,我想上传一个文件,我想防止用户选择错误格式的文件。因此,我使用jQuery脚本来验证文件扩展名 这是输入 <input id="uploadCV" type="file" name="uploadCV" accept="application/pdf" /> 这段代码在Firefox上运行得很好,但在IE中却不行。这是因为在IE中,$(“#uploadCV”).val()中的文件名不包含扩展名,例如,它包含\directory\filename,而不是\directory\file

我想上传一个文件,我想防止用户选择错误格式的文件。因此,我使用jQuery脚本来验证文件扩展名

这是输入

<input id="uploadCV" type="file" name="uploadCV" accept="application/pdf" />
这段代码在Firefox上运行得很好,但在IE中却不行。这是因为在IE中,
$(“#uploadCV”).val()中的文件名不包含扩展名,例如,它包含
\directory\filename
,而不是
\directory\filename.pdf


以前有人遇到过这样的事情吗?有什么解决办法吗

我已经用IE9测试过了,现在没有IE8要测试, 此函数还考虑最后一个点,在您的解决方案中,如果文件名包含这样的点,则扩展名将是错误的。is.a.pdf.pdf

看看这把小提琴:


如果你需要进一步的帮助,请告诉我

问候 一月


这将允许在选择非pdf文件时显示警报,并在选择非pdf文件时清除选择。

我使用IE8和IE9进行了检查
if ($("#uploadCV").val().split(".")[1].toUpperCase() == "PDF") 
{
     return true;
}
else{
     return false;
}
$('#sendMe').click(function() {
    var file = $("#uploadCV").val();
    if (file.substr(file.lastIndexOf('.') +1).toUpperCase() == "PDF") 
    {
         $('.result').html('valid');
    }
    else
    {
           $('.result').html('not valid');

    }
});
<input id="uploadCV" type="file" name="uploadCV" accept="application/pdf" />
<div class="result"></div>
<input type="button" id="sendMe" value="send" />
$('#fileid').change(function (e) {
    var ext = this.value.match(/\.(.+)$/)[1];
    if(ext.toLowerCase() !== "pdf" )
    {
        alert("Only Pdf format supported");
        e.preventDefault(); 
        if ($.browser.msie) {
            $('#fileid').replaceWith($('#').clone()); // This makes file selected to null in IE
      }
      else {
            $('#fileid').val("");
      }
    }

});