一、文件上传控件获取焦点时,自动弹出文件选择框。
- stringscript="varmyupload=document.getElementById('"+FileUpload1.ClientID+"');myupload.click();myupload.blur();";
- FileUpload1.Attributes.Add("onfocus",script);
源于文件上传控件中文件框内容的校验。默认情况下是可以手式输入的,容易出现非正常的输入。以前是设置input的contentEditable="false",但该属性似乎只在ie下有效。后来受到google文档的提示,才有了这个思路。最后那句blur();的作用是防止重复弹出窗口。
(补充说明:这段脚本发现在IE下有问题:随便点击一个按钮都会弹出一个文件选择框。发文之前只在firefox下试过,没想到IE下会出现这样的问题,一直想不明白是怎么回事,已经在社区里发贴,还没答案。目前找到一个替代方案用于防止用户输入文本:FileUpload1.Attributes.Add("onKeyDown", "this.blur();"); FileUpload1.Attributes.Add("oncontextmenu", "return false");)
————————————————————————————————
二、页面回滚时回到以前的位置。
页面比较长,提交按钮位于下方,页面回滚时滚动条会到最顶端。当然,可以直接在page中设置,但这种方法并不适应所有的情况。所以,需要一种纯脚本的解决方法,最后一句脚本的作用就是:
- ClientScript.RegisterStartupScript(this.GetType(),"script","<scriptdefer="defer">document.getElementById('att').style.display='block';window.onload=function(){document.documentElement.scrollTop=parseInt(document.body.offsetHeight)-parseInt(document.documentElement.offsetHeight)+100;}</script>",false);
本文介绍了一种使文件上传控件在获得焦点时自动弹出文件选择框的方法,并提供了一个防止用户直接输入文本的备选方案。此外,还讨论了如何使用纯脚本方法确保页面回滚时能返回到之前的位置。
2507

被折叠的 条评论
为什么被折叠?



