我的页面中有一个Struts File控件。如果输入无效,我想重置我的文件控件。以下是我注意到的事情: 1)大多数浏览器不允许我们重置文件控件。 2)我们可以做的是用新控件替换现有控件并复制所有原始控件的属性。 我这样做了:
var newInput = document.createElement("input");
newInput.type = "file";
newInput.id = document.getElementById("myfilecontrol").id;
newInput.name = document.getElementById("myfilecontrol").name;
newInput.className = document.getElementById("myfilecontrol").className;
newInput.style.cssText = document.getElementById("myfilecontrol").style.cssText;
document.getElementById("myfilecontrol").parentNode.replaceChild(newInput, document.getElementById("myfilecontrol"));
我的问题是这只能运作一次。它是调用验证方法而不是新方法的旧控件。有什么办法可以让我的新控件自动调用验证方法吗?还是有另一种更好的方法来重置struts文件控件? (刷新页面不是一个选项。)提前感谢。