Javascript 一旦可见性设置为隐藏,则无法查看html表

Javascript 一旦可见性设置为隐藏,则无法查看html表,javascript,html,Javascript,Html,我正在根据选择上载的文件处理可见和隐藏的html表格。如果我选择扩展名为“.docx”,“.txt”的文件,效果会很好,但如果我选择其他扩展名文件,如.pdf表格,则会按预期隐藏,但是,如果以后我再次选择了正确的文件,则必须显示该表,其中显示了不起作用的文件名。在选择了错误的扩展名(对您来说是错误的)后,更改未启动的原因如下: if (!blnValid) { ... document.getElementById('uploadFile_div').innerHTML = docume

我正在根据选择上载的文件处理可见和隐藏的html表格。如果我选择扩展名为“.docx”,“.txt”的文件,效果会很好,但如果我选择其他扩展名文件,如.pdf表格,则会按预期隐藏,但是,如果以后我再次选择了正确的文件,则必须显示该表,其中显示了不起作用的文件名。

在选择了错误的扩展名(对您来说是错误的)后,更改未启动的原因如下:

if (!blnValid) {
  ...
  document.getElementById('uploadFile_div').innerHTML = document.getElementById('uploadFile_div').innerHTML;
  ...
}
您正在用新的元素替换
input[type=“file”]
元素,以便它不再绑定
onchange
事件

要修复它,只需给
onchange
函数一些名称,并在替换innerHTML后将其绑定到输入文件元素。查看以下链接:


在选择了错误的分机(对您来说是错误的)后,
onchange
没有启动的原因如下:

if (!blnValid) {
  ...
  document.getElementById('uploadFile_div').innerHTML = document.getElementById('uploadFile_div').innerHTML;
  ...
}
您正在用新的元素替换
input[type=“file”]
元素,以便它不再绑定
onchange
事件

要修复它,只需给
onchange
函数一些名称,并在替换innerHTML后将其绑定到输入文件元素。查看以下链接:


他们有其他选择吗?我已使用该代码清除所选文件,选择在我的代码中单击“清除”按钮时上载。@用户3684675请检查更新的答案和链接-它应该能为您解决问题对不起,问题仍然存在,当我单击“清除”按钮时,表消失,文件无法再次加载表。请在karolkochan的更新版“+1”中找到相同的内容,我认为他的解决方案应该有效,但请查看@user3684675,我认为您进一步的问题在于JSFIDLE的工作方式。您的清除按钮似乎无法运行clearFileInputField函数。我相信这是由于jsfiddle将JavaScript代码包装在其中。我只是简单地将粘贴好的JavaScript代码复制到HTML区域中,然后用“清除”按钮将其环绕,现在就可以工作了。看看这个:他们有其他选择吗?我已使用该代码清除所选文件,选择在我的代码中单击“清除”按钮时上载。@用户3684675请检查更新的答案和链接-它应该能为您解决问题对不起,问题仍然存在,当我单击“清除”按钮时,表消失,文件无法再次加载表。请在karolkochan的更新版“+1”中找到相同的内容,我认为他的解决方案应该有效,但请查看@user3684675,我认为您进一步的问题在于JSFIDLE的工作方式。您的清除按钮似乎无法运行clearFileInputField函数。我相信这是由于jsfiddle将JavaScript代码包装在其中。我只是简单地将粘贴好的JavaScript代码复制到HTML区域中,然后用“清除”按钮将其环绕,现在就可以工作了。看看这个: