Firefox和Edge浏览器无法识别HTML输入图像按钮标记标记

时间:2017-02-13 11:14:54

标签: php html

我在表单的末尾有这个HTML按钮代码 :

input type="image" name="enter" value ="test" src = "design_files/addpanier.png 

它生成按钮,我可以点击它,但是当我使用以下方法在PHP中测试按钮时

if(isset($_POST['enter'])).....

在Firefox或Mircosoft Edge中未检测到它,但在Chrome中没有检测到。

我通过使用隐藏字段

复制'enter'字段来绕过它

input type="hidden" name="enter" value= "enter" 

input type="image" name="enter" value ="test" src = "design_files/addpanier.png" 

字段中的值无关紧要。

但我的原始代码是错误还是浏览器有问题?

1 个答案:

答案 0 :(得分:0)

您需要在表单数据中测试是否存在enter.x(或enter.y),而不是enter。原因是对于图像提交按钮,对表单数据的贡献与其他字段的定义不同:单击的位置的坐标(如果使用了指向设备以外的方法,则为0,0)包含在数据中,使用name属性值派生的名称,并附加字符串.x.y。 (某些浏览器还包含一个名称来自name属性的字段,但由于您无法依赖它,因此无用。)

参考:Description of input type=image at MDN(按照规范链接查找表格提交时发生的最权威的定义。)