日期:2014-05-16 浏览次数:20815 次
<input type='file' id='loca' style='display:none'> <input type='button' id='test' value='浏 览'> <input type='button' id='uper' value='上 传'> <script> ! +"\v1" || (HTMLElement.prototype.click = function(){ var eve = this.ownerDocument.createEvent("MouseEvents"); eve.initMouseEvent("click", true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null); this.dispatchEvent(eve); }); function $(o){return document.getElementById(o) || o} $("test").onclick = function() { $("loca").click(); } $("uper").onclick = function() { alert($("loca").value); // up data } </script>
------解决方案--------------------
楼上的HTMLElement.prototype 应该在IE没效吧
选中文件? 由人来选择?还是也是模拟?
模拟的话,办不到的,这涉及到安全问题,浏览器不允许这么做的
其他的,模拟点击、直接提交,可以做到
------解决方案--------------------
浏览器的开发商 认为 这是一种可能的 潜在的 危害 客户端的行为
因为 不允许 代码编写尝试这样的操作
这个考虑不考虑不在我们 在于浏览器的开发商
当然,在IE下,ActiveX有些可能下
我去翻阅下再来试下...
------解决方案--------------------
楼主可以试试这个控件。
此控件是基于标准HTTP协议实现的文件上传功能。优势是扩展性非常好,整合简单,支持批量上传文件和上传文件夹功能,适合各种简单WEB项目。
另外一个特点是支持自动上传指定的本地文件。
单文件上传演示
单文件整合代码:
服务器返回消息:<input id="txtFilePath" type="text" size="50" /> <script type="text/javascript" language="javascript"> var uploaderMgr = new HttpUploaderSingleMgr(); uploaderMgr.Config["PostUrl"] = "http://localhost:8080/asp.net/upload.aspx"; uploaderMgr.Load(); uploaderMgr.CompleteHook = function(msg) { document.getElementById("txtFilePath").value = msg; }; window.onload = function() { uploaderMgr.Init(); }; </script>
------解决方案--------------------