1、document.attachlist.annexFile.attachEvent("onchange","alert('ok')");
2、document.getElementById("attachFile").change = function(){alert('ok');}
3、document.getElementById("attachFile").onchange = function(){alert('ok');}
以上均无反应,求救!!!
---------------- html ----------------
<form id="sendlist" name="sendlist" action="" method="post" enctype="multipart/form-data">
<input type="text" name="file" value="" />
<input type="button" name="annex" value="添加附件" onclick="checkAnnex()" /><br/>
<p class="attachNotice" id="attachNotice" name="check_attach">此文件为"秘密"文件</p>
</form>
<form id="attachlist" name="attachlist" action="" method="post" enctype="multipart/form-data">
<input id="attachFile" style="display:none" type="file" name="annexFile" value="" />
</form>
------------------- js ---------------------
function checkAnnex(){
document.getElementById("attachFile").onchange = function(){
var filename = document.attachlist.annexFile.value;
document.sendlist.file.value = filename;
document.attachlist.action="send.php?annexCHK="+filename;
//document.attachlist.submit();
}
}
貌似:document.getElementById("attachFile")是元素而不是对象,请教解决方法!!!
麻烦您再给看看啊?
追答你看你上面写的本身就是有问题的,一个按钮怎么能有anchange事件呢,你应该改为onclick事件,或者是对你的file文本框加onchange事件
追问我的代码就是对第一个form中的按钮添加的onclick事件,只是在函数里面给file元素添加onchange事件没有反应啊。
我的本意是用按钮的onclick事件调用input-file的onchange事件,可是input-file是隐藏的,即点击第一个按钮时触发file事件,打开文件浏览对话框,选择后提交第二个表单中包括file的内容。您能帮忙给段可用的代码吗?
你写的这个触发事件其实是有问题的,例如:onclick是当你点击的时候才会触发,而onchange是你改变的时候触发,他不会同时执行的,还有就是当你给你的input-file的style属性设置为none的时候,这个对象还能用么
本回答被提问者采纳