图像提交按钮传递值

时间:2010-04-05 07:23:00

标签: button submit form-submit

我有一个像这样的图像提交按钮

     <input id="enter" name="enter" type="image" 
      value="Login"
       src="images/btn_login.jpg"/>

点击此图片后,我获得了以下值

    enter.x=39&enter.y=11

但我想获得enter =登录提交

如何在提交时登录输入值?

由于

一些快速浏览器测试

Chrome: Working
Safari: Working
Firefox: Working
IE: Not Working
Opera: Not working

工作方式是输入=登录传递。在撰写本文时,所有浏览器都是最新版本

2 个答案:

答案 0 :(得分:2)

IE6和IE7绝对不会传递图像提交的值,因此如果您希望页面在这些浏览器中工作,则无法使用此方法。但是我很惊讶你说IE的最新版本不起作用,我认为它确实

我发现唯一可靠的后备是重载name属性:

 <input id="enter" name="enter.login" type="image" 
  value="Login"
   src="images/btn_login.jpg"/>

然后,您必须遍历所有表格参数并查找名称以“enter”开头的名称。请注意,您的输入仍然需要具有某种值属性,否则浏览器根本不会通过它。

或者,您可以使用带有背景图片的常规提交按钮 - 难以获得一致的样式,或<button> - 尽管IE中的问题甚至比图像提交更强更多: (

答案 1 :(得分:0)

您可以使用一个小的javascript,在点击图片时将正确的值传递给隐藏的输入字段并提交表单。

示例:

<script>
function submitimg(myvalue)
{
    document.getElementById('enter').value = myvalue;
    document.getElementById('myform').submit(); 
}
</script>

<form id="myform">
<input type="hidden" name="enter" value="">
<img src="images/btn_login.jpg" style="cursor:pointer;" onclick="submitimg('Login');">
</form>