单击提交清除文件字段而不是提交表单(IE9)
Posted
技术标签:
【中文标题】单击提交清除文件字段而不是提交表单(IE9)【英文标题】:Clicking submit clears file field instead of submitting the form (IE9) 【发布时间】:2011-11-22 17:09:44 【问题描述】:我遇到了一个奇怪的错误,希望大家帮忙解决。
有时当用户尝试提交表单时,文件上传字段image
会被清除,但没有任何反应。我似乎根本没有提交表单。
然后一切正常后的第二天。错误发生在随机日期/时间。
首先我认为这是用户计算机的问题,但这种情况发生在客户拥有的两台不同的计算机上。其中一台计算机装有 Windows 7 Professional 和 Internet Explorer 9。另一台我没有设置。
我在 windows 7 home 上尝试过使用 Google Chrome、Firefox 6.0.2、Internet Explorer 9、8(浏览器兼容模式)、7(浏览器兼容模式),在我的计算机上完全没有问题。
这是表格:
<form action="/user/image" method="post" accept-charset="utf-8" class="form_default" enctype="multipart/form-data">
<fieldset>
<ol>
<li>
<button type="submit" name="save" value="submit" class="button">Save</button>
</li>
<li>
<label for="image">Profile image</label><input type="file" id="image" name="image" />
</li>
<li>
<button type="submit" name="save" value="submit" class="button">Save</button>
</li>
</ol>
</fieldset>
</form>
【问题讨论】:
尝试为我提交表单.. 我没有脚本可以在 /user/image 处接受表单,但它是 404 的 您找到解决此错误的方法了吗?我正在经历完全相同的事情...... 只是出于好奇 - 如果您使用 代替,此错误是否仍然存在? 不确定 Cudos,但就我而言,我已经在使用 提交文件上传表单 另外,emphaticsunshine,唯一发生这种情况的浏览器是 IE,所以我想我会为此责怪 IE。 :P 【参考方案1】:每个form
应该只有 1 个submit button
。
所以保留 1 个保存按钮为 type="submit"
,将另一个更改为 type="button"
【讨论】:
【参考方案2】:尝试使用输入而不是按钮,祝你好运!
前
<input type="submit" name="mysubmit" value="Click!" />
【讨论】:
【参考方案3】:你应该使用:
<input type="button" onclick="customFunction" />
在customFunction(javascript)中写下你想做的事情
【讨论】:
【参考方案4】:对此没有聪明的解决方法,IE9 不允许通过 JavaScript 篡改文件,这可能是出于安全原因。
【讨论】:
【参考方案5】:首先,请让我们看看您发送此表单的 php 编码...... 通常诸如此类的表单提交错误具有服务器端编码错误.. 也许你应该检查一下你的 PHP 编码,看看你的
$_POST['save']
面积....
希望这会有所帮助... :)
【讨论】:
发帖人在表单提交之前非常清楚地表明了问题。事实上,他们说表单似乎根本没有提交。我也有同样的问题,而且肯定是客户端的问题。以上是关于单击提交清除文件字段而不是提交表单(IE9)的主要内容,如果未能解决你的问题,请参考以下文章