您的位置:程序门 -> web 开发 -> javascript



file 框 和 innerhtml 问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


file 框 和 innerhtml 问题[已结贴,结贴人:dgxs34]
发表于:2008-02-11 05:45:01 楼主
如果使用   file   框

选择文件后,再进行   innerhtml~!

file   框内的内容会清除,如何解决?


例:
<a   href='javascript:chk()'> 显示 </a>
<div   id=ls> </div>
<script>
function   chk(){
ls.innerhtml   +=   " <input   type=file   name=file> <br> ";
}
</script>
发表于:2008-02-11 08:25:481楼 得分:0

file框是你innerhtml之后才生成的,,

你是如何在生成它之前就选择文件? 

又何来的清除?

------------------

猜测你是希望隐藏/显示这个框。那你应该是用它的display属性。
发表于:2008-02-11 13:14:412楼 得分:0
生成一个   file   后,选择文件后~

再生成一个,第一个选择的文件就被清除了~

如何解决啊?
发表于:2008-02-11 13:48:213楼 得分:0
那你就要动态生成file
发表于:2008-02-11 13:48:514楼 得分:20
html code
<script> function chk(){ var file=document.createelement("input"); file.type="file"; ls.appendchild(file); } </script>
发表于:2008-02-11 13:50:045楼 得分:0
要先判断是否已经有flie了,如果有,就进行增加语句,如果没有就进行首次增加语句
发表于:2008-02-11 14:03:426楼 得分:0
ls.innerhtml       +=       ...

就是把原来的子元素都干掉,再重新解析新的innerhtml

用appendchild就不会了...
发表于:2008-02-11 17:25:147楼 得分:0
用   appendchild   生成单个   file   框可以,如果要生成多个   input   框呢?

如何实现?
发表于:2008-02-11 17:28:588楼 得分:0
执行一次添加一个啊...

<a       href='javascript:chk();void(0)'>   显示   </a>  
发表于:2008-02-11 17:44:579楼 得分:0
例如:
<a   href='javascript:chk()'> 显示 </a>
<div   id=ls> </div>
<script>
function   chk(){
ls.innerhtml   +=   " <div   id=f1> 名称: <input   type=text   name=name>   格式: <input   type=text   name=name> <br> 文件: <input   type=file   name=file> <hr> </div> ";
}
</script>

如何用   appendchild     ?
发表于:2008-02-11 18:54:3010楼 得分:0
4楼的已经回答得很清楚了,不要用innerhtml。
html code
<a href=“javascript:chk()”>显示</a> <div id="ls"></div> <script type="text/javascript"> <!-- function chk(){ var file=document.createelement("input"); file.type="file"; ls.appendchild(file); var br=document.createelement("br"); ls.appendchild(br); } //--> </script>
发表于:2008-02-11 19:35:5011楼 得分:0
哇哈哈~!

解决了~

先   创建一个   div   然后把内容   innerhtml   进去~

再然后   appendchild   生成~

哈哈~

发分~


快速检索

最新资讯
热门点击