JavaScript 浏览器兼容性问题

JavaScript browser compatibility issue

本文关键字:问题 兼容性 浏览器 JavaScript      更新时间:2023-09-26

我的JavaScript函数中有一个问题。

下面是我的js代码:

function abc(formobject){
    var ext =".txt";
         var abc=".doc,docx";
    if(abc.search(ext) < 0){
        alert("hi"); 
        formobject.file.value="";
        return false;
    }
    return true;
}
<input type="submit" id="button"  value="submit" onclick="return abc(this.form);">

在这里单击提交按钮abc()我正在调用 js 函数并上传文件。它执行逻辑,如果文件的扩展名无效,则应引发警报并清除浏览按钮的值。它发生在Mozilla中,但这些值在IE8中没有得到清除。谁能帮我解决这个问题?

文件是我在此处上传的<html:file property="file"/>

而不是

formobject.file.value=""; 

尝试使用

formobject.reset();

希望这有帮助。

我假设您的表单中只有"浏览"字段。

由于安全限制,无法访问文件输入标记的值字段。 更多关于这方面的内容,请访问 http://blogs.msdn.com/b/ie/archive/2008/07/02/ie8-security-part-v-comprehensive-protection.aspx

如果您只想清除文件字段

,则必须在文件字段之前添加一个div 标签并清除它。

例:-

<html>
<head>
<script type="text/javascript">
function abc(formobject){     
var ext =".txt";          
var abc=".doc,docx";     
if(abc.search(ext) < 0){         
alert("hi");          
document.getElementById('uploadFile_div').innerHTML = 
                    document.getElementById('uploadFile_div').innerHTML;
return false;     
}     
return true; 
} 

</script>
</head>
<body>
<form name="theForm">
<div id="uploadFile_div">
<INPUT NAME="file" TYPE="file">
</div>
<input type="submit" id="button"  value="submit" onclick="return abc(this.form);">
</body>