JS一个高深问题,选择好图片自动提交表单

<script>functiona(){document.getElementById('file1').click();alert(123);}</script><di... <script>
function a() {
document.getElementById('file1').click();
alert(123);

}

</script>
<div onclick="a()">bbbb</div>
<form style="display:none;" method='post' action="test.php" id='fm' enctype="multipart/form-data" >
<input id="file1" name="file" type="file" />
<input type="submit" value="submit"/>
</form>

现在是点bbb,能选择图片添加了,但是,我还没选好alert就出来了
这就意味着,异步的,我现在想做到的是:当我选择好图片,以后弹出来alert(123)
我完全可以等框弹出来后逛一圈回来再选择,所以定时的不行

高手支招啊,有难度吧,能不能实现都给个理由哈,谢谢
展开
 我来答
盛洲0h4
2015-10-02 · TA获得超过178个赞
知道答主
回答量:199
采纳率:0%
帮助的人:20.8万
展开全部
图片提交form:

然后js有验证为:

//报名验证
function checksub(form){

if(条件){ //判断是否登录
showModeWindow(); //弹出登录框
return false;
}

if(条件){ //登录是否输入姓名
alert("请填写真实姓名!");
$("#realname").focus();

return false;
}
return ture;
}

就这样,就是登录必须登录,并且输入了姓名后,才能提交表单。项目正常用了一段时间,没任何问题,可是有一天,客户突然问题,为什么报名表中有一
条数据没有用户姓名,我就觉得奇怪,就又返回测,怎么测,都会正常提交先登录,或是输入姓名。我百思不得其解。
所以,我都视这个问题为一灵异现象,直至今天,我的网速不好,我再次瞎点,真还发现我自己都提交了一报名信息。再试,再发一个问题,就是页面刚刚加载出提
交按键时,我就点击那个提交按钮,这时,js会发生一个错误,但瞬间就没了,因为页面已经转到报名结果页面。呵,这家伙,这我才明白,原来,网速不好,页
面加载慢,在页面刚加载到提交按钮时,我就点击提交,js验证到用户并未登录,所以执行

showModeWindow(),可是此时,这个弹出框相关的东
西还没有加载完毕,就会找不着相应对象,故产生js异常。而可罪恶的submit类型提交按钮,会忽略掉js异常,直接提交表彰。以后出理所谓的“灵异现
象”。
于是,当即改之如下:

js改为:

function checksub(){

if(条件){ //判断是否登录
showModeWindow(); //弹出登录框
return;
}

if(条件){ //登录是否输入姓名
alert("请填写真实姓名!");
$("#realname").focus();

return;
}

$("#campaignFrom").submit(); //提交表单。

}
王秀虎
2012-10-09 · TA获得超过740个赞
知道小有建树答主
回答量:847
采纳率:50%
帮助的人:787万
展开全部
我在win +ie9下测试,选好内容后才会alert()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiangxibaiyi
2012-10-09 · 跟随风去旅行-伤心的歌
jiangxibaiyi
采纳数:3973 获赞数:14412

向TA提问 私信TA
展开全部
<script>
function a() {
document.getElementById('file1').click();
}
</script>
<div onclick="a()">bbbb</div>
<form style="display:none;" method='post' action="test.php" id='fm' enctype="multipart/form-data" >
<input id="file1" name="file" type="file" onChange="alert(123)" />
<input type="submit" value="submit"/>
</form>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式