Php IE&;中的按钮类型值不同;FF
我使用的表单包含如下所示的按钮类型:Php IE&;中的按钮类型值不同;FF,php,html,Php,Html,我使用的表单包含如下所示的按钮类型: <form method="post" action=""> <button type=submit value="hello" name="submitform">World</button> </form> 鉴于 Array ( [submitform] => Hello ) in FF(v 3.5) 为什么它显示不同的值。。。 现在我的问题是: 我想在两个浏览器中都使用[submitf
<form method="post" action="">
<button type=submit value="hello" name="submitform">World</button>
</form>
鉴于
Array
(
[submitform] => Hello
)
in FF(v 3.5)
为什么它显示不同的值。。。
现在我的问题是:
[submitform]=Hello
,我不想在
还是
更好使用
按钮
可以在按钮内显示任意文本或图像。这在input
afaik中是不可能的。该值始终也是按钮文本
如果IE有这种奇怪的行为,那么您似乎别无选择,无法保持按钮的值和其中的文本相同(这正是
输入
所做的)。我总是使用
,它工作得很好。您可以用隐藏的输入字段替换按钮的信息:
<form method="post" action="">
<button type="submit">World</button>
<input type="hidden" name="submitform" value="hello" />
</form>
世界
这是一个browserquirks保存方法
另一种可能是使用图像,尽管不那么优雅:
<form method="post" action="">
<input type="image" src="my_World_image.gif" name="submitform" value="hello" />
</form>
优点:您可以有多个提交按钮提交不同的值
缺点:正如David Dorward提到的,由于错误的实现,即IE,您很可能会再次面临同样的问题
第三种可能是JavaScript,但是禁用它的用户会遇到各种各样的问题(我警告过你!):
提交你好
提交世界
函数do_提交(值){
document.getElementById('changeme')。value=value;
document.getElementsByTagName('form')[0].submit();
}
在MSIE中被严重破坏<代码>不允许标签与值不同
解决方法是使用
并给每个人一个唯一的名称。为什么这不是您想要的解决方案?与您的问题不同的唯一情况是,当您有多个提交按钮时。在这种情况下,你要么放弃按钮中的“世界”,要么添加一些容易出错的JavaScript,这是行不通的。有些浏览器不发送图像输入值,只发送坐标。@David Dorward:更新了答案。
<form method="post" action="">
<input type="image" src="my_World_image.gif" name="submitform" value="hello" />
</form>
<input type="hidden" name="submitform" value="" id="changeme" />
<button type="button" onclick="do_submission('hello')">Submit Hello</button>
<button type="button" onclick="do_submission('world')">Submit World</button>
<script type="text/javascript">
function do_submission(value) {
document.getElementById('changeme').value = value;
document.getElementsByTagName('form')[0].submit();
}
</script>