multipart/form-data类型的from

kisslan 2008-11-19 12:31:38
multipart/form-data类型的from
代码如下:

function sub(url)
{
var url = '........';
document.form1.target='';
document.form1.action = url;
document.form1.submit();
}


<form name="form1" method="post" enctype="multipart/form-data" target="tFrame">
<input type="button" name="button" value="button" checked onclick="return sub()"/>
</form>



document.getElementById('...').innerHTML ="<input id ='动态' type='file'\>";
放入了很多file 的tag!但是如果这些file框里面内容不是文件的话.
1提交ie就报错误.ff不报!
由于这个file框我们是用来放图片的,图片可以来自url也可以来自本地!所以导致file框里面可能是图片link!
但是现在只要有图片link就提交报错!无法正常提交.如果都是文件的话没有这个问题 !
现在不知道怎么解决了!55希望得到帮助啊...
...全文
294 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
ganglong99 2008-11-19
  • 打赏
  • 举报
回复
为什么要用document.getElementById('...').innerHTML=" <input id ='动态' type='file'\>"; 来放置上传文件的标签呢,何不直接在页面中写<input id ='..' type='file'\> ?


wp_stork 2008-11-19
  • 打赏
  • 举报
回复
可以巧妙一点。用多个form来实现
kokobox 2008-11-19
  • 打赏
  • 举报
回复
没看明白。。。

代码贴的全一点嘛,让我们本地也能调试的,这样好给你找问题嘛
mayuanfei 2008-11-19
  • 打赏
  • 举报
回复
我建议你限制下用户上传文件的类型

<script>
function check(){
var filepath=path.value
filepath=filepath.substring(filepath.lastIndexOf('.')+1,filepath.length)
if(filepath != 'jpg' && filepath != 'gif')
alert("只能上传JPG或GIF格式的图片")
}
</script>

<input type=file name=path onpropertychange="check()"> (只能上传JPG或GIF格式的图片)

shwwwx 2008-11-19
  • 打赏
  • 举报
回复
IE的type=file是可以提交图片的啊,应该是其他方面的问题。
type=file的值是不能通过javascript修改的。
  • 打赏
  • 举报
回复
[Quote=引用楼主 kisslan 的帖子:]
multipart/form-data类型的from
代码如下:

Java code
function sub(url)
{
var url = '........';
document.form1.target='';
document.form1.action = url;
document.form1.submit();
}


<form name="form1" method="post" enctype="multipart/form-data" target="tFrame">
<input type="button" name="button" value="button" …
[/Quote]

document.getElementById('...').innerHTML

你这部分加哪的?
fuyou001 2008-11-19
  • 打赏
  • 举报
回复
up
zidasine 2008-11-19
  • 打赏
  • 举报
回复
up
MinThinking 2008-11-19
  • 打赏
  • 举报
回复
帮顶,期待有人解决!
asshole009 2008-11-19
  • 打赏
  • 举报
回复
kisslan 2008-11-19
  • 打赏
  • 举报
回复
一提交ie就报错误.ff不报!
而且如果file框里面不手输的话,通过"浏览"选择文件,也不报告错!
错误代码是

name= RangeError
message="拒绝访问"
number=-2147352567
description="拒绝访问"

这是我通过cache(e)打印出出来的错误信息


function sub(url)
{
try{
var url = '........';
document.form1.target='';
document.form1.action = url;
document.form1.submit();
}catch(e){}
}
showde123 2008-11-19
  • 打赏
  • 举报
回复
只能帮顶
llddy 2008-11-19
  • 打赏
  • 举报
回复
你需要改一下 对这样的操作不要用innerHTML 可能取不到对象。
可以复制节点 也可以往节点里面插入。



<table id="table1" border="1">
<tr style="display:none"><td></td><td><input name="a" type="file"><input type="button" value="删除" onclick="this.parentNode.parentNode.removeNode(true)">
</tr>
<tr><td></td><td><input name="a" type="file"><input type="button" value="删除" onclick="this.parentNode.parentNode.removeNode(true)">
</tr>
<tr><td></td><td><input name="a" type="file"><input type="button" value="删除" onclick="this.parentNode.parentNode.removeNode(true)">
</tr>
</table>
<input name="aaa" type="file">
<input name="aaa" type="button" value="新增" onclick=addRow()>
<script language=javascript>
function addRow(){
var objTbody=document.getElementById("table1").childNodes[0]
var objNewTr=objTbody.childNodes[0].cloneNode(true)
objNewTr.style.display=""
objTbody.appendChild(objNewTr)
}
</script>

shenjie1989 2008-11-19
  • 打赏
  • 举报
回复
估计还是代码有问题
  • 打赏
  • 举报
回复
type=file是只读的,不能修改的
好像问题不是清楚
冰思雨 2008-11-19
  • 打赏
  • 举报
回复
帮顶

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧