高手请进,在线等,JavaScript form2.submit(); 访问被拒绝

用户昵称不能为空 2009-11-04 12:44:51
表单的action是外网的,带HTTP://的
表单提交的target="ifmUpload";
提交的时候使用的是JavaScript的 form2.submit();但是并没有提交表单,访问被拒绝了。


<iframe id="ifmUpload" name="ifmUpload" style="width:1px;height:1px;display:none;"></iframe>




-----------------------------------
但是当action的值为a.php,target的值为_blank的时候仍旧是无法提交,提示访问拒绝。
---------------------------------------------------------------------------------
如何才可以让JavaScript 自动提交表单,(表单中带有file文件域)。
...全文
875 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
qingralf 2009-11-05
  • 打赏
  • 举报
回复
将文件上传的form放到另一个iframe中隐藏(a).当要上传的时候,点击按钮,通过js就可以控制这个iframe(a)的type为file的按钮onclick.然后提交.测试通过.且没有安全性限制.
如果在本页做.js控制按钮时候,提示权限问题.不能操作.
夜雨~听风 2009-11-05
  • 打赏
  • 举报
回复
一涉及访问被拒绝就应该首先想到是浏览器安全级别的问题,改一下安全级别看看行不?
  • 打赏
  • 举报
回复
完整代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>上传到土豆</title>
<link href="../style/default.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" type="text/javascript" src="../js/jquery-1.3.2.min.js"></script>
<script language="JavaScript" type="text/javascript" src="../js/func.js"></script>
<script language="javascript" type="text/javascript">
function chUpload(){
var vedio=G("vedio");
var tt=G("title");
var cnt=G("cnt");
var tp=document.getElementsByName("channel");
var tpv;
var frm=G("formUpload");
var ajaxImg=G("ajaxImg");
for(var i=0;i<tp.length;i++){
if(tp[i].checked=='checked'){
tpv=tp[i].value;
break;
}
}
ajaxImg.style.display='';
/** 获取信息 **/
var tURL="get.php";
$.ajax({
url: tURL,
type: 'GET',
dataType: 'xmlDoc',
timeout: 5000,
error: function(){
alert("出错了!");
},
success: function(xmlDoc){
var api;eval("api="+xmlDoc);
upVedio(api.uploadApi);
G("msg").innerHTML=xmlDoc;
}
});
return false;
}
//创建OBJ
function cOBJ(str){
return str;
}

//上传视频文件
function upVedio(u){
var a=document.createElement("a");
a.href=u;
var frm=G("frmUpload");
frm.action=u;
alert(frm.action);
frm.submit();
}

//进度条查询
function getProcess(u){
$.ajax({
url: "get.php?u="+u+"&time="+(new Date()).valueOf(),
type: 'GET',
dataType: 'xmlDoc',
timeout: 1000,
error: function(){
return 'err';
},
success: function(xmlDoc){
return xmlDoc;
}
});
}
</script>
</head>

<body>
<h1>土豆视频上传</h1>
<table width="100%" border="0">
<tr>
<td width="80">选择上传文件</td>ifmUpload
<td><form id="frmUpload" target="_blank" method="post" enctype="multipart/form-data" action="" onsubmit="return true;">
<input type="text" class="text" id="xfile" style="width:300px;color:#ccc;" title="文件大小不超过500MB" readonly="readonly" />
<input type="button" class="ibtn btn_file" value="浏览..." onclick="G('upFile').click();return false;" />
<a href="javascript:void(0);" class="btn_selfile" title="选择上传文件">
<input id="upFile" type="file" name="file" style="display:none" onchange="G('xfile').value=this.value" />
</a>
<label>
<input type="submit" name="Submit" value="提交" />
</label>
</form>
</td>
</tr>
<tr>
<td>标题</td>
<td><label>
<input name="title" type="text" id="title" />
</label></td>
</tr>
<tr>
<td>内容</td>
<td><label>
<textarea name="cnt" id="cnt"></textarea>
</label></td>
</tr>
<tr>
<td>分类</td>
<td><div>
<label><input name="channel" value="22" type="radio">影视</label>
<label><input name="channel" value="99" type="radio">播客</label>
<label><input name="channel" value="1" type="radio">娱乐</label>
<label><input name="channel" value="9" type="radio">动画</label>
<label><input name="channel" value="14" type="radio">音乐</label>
<label><input name="channel" value="15" type="radio">体育</label>
<label><input name="channel" value="26" type="radio">汽车</label>
</div>
<div>
<label><input name="channel" value="24" type="radio">财富</label>
<label><input name="channel" value="27" type="radio">女性</label>
<label><input name="channel" value="10" type="radio">游戏</label>
<label><input name="channel" value="3" type="radio">乐活</label>
<label><input name="channel" value="21" type="radio">科技</label>
<label><input name="channel" value="25" type="radio">教育</label>
</div>
 </td>
</tr>
<tr>
<td>标签</td>
<td>标签1:
<label>
<input name="textfield2" type="text" class="tag" />
</label>
标签2:
<label>
<input name="textfield3" type="text" class="tag" />
</label>
标签3:
<label>
<input name="textfield4" type="text" class="tag" />
</label></td>
</tr>
<tr>
<td> </td>
<td><label>
<input name="subs" type="button" id="subs" value="上传" onclick="chUpload()" />
<input name="itemId" type="hidden" value="0" />
</label>
<img src="images/loading.gif" width="32" height="32" style="display:none" id="ajaxImg" /></td>
</tr>
</table>
<p> </p>
<iframe id="ifmUpload" name="ifmUpload" style="width:1000px;height:100px;display:;"></iframe>
<div id="msg"></div>
</body>
</html>
LuciferStar 2009-11-04
  • 打赏
  • 举报
回复
需要看完整代码。
O溺水的鱼0 2009-11-04
  • 打赏
  • 举报
回复
如果是内外网提交的话就是用域名看看,这种方式是可以正确提交的。。
烟雨鹏城 2009-11-04
  • 打赏
  • 举报
回复
<input id="upFile" type="file" name="file" style="display:none" onchange="G('xfile').value=this.value" />
表单中存在file是,必须通过手动触发点击file控件的浏览时一切操作,通过别的控件来触发file的点击事件时就会出现拒绝访问的提示,这是ie处于安全性 的限制。没办法改变

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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