【发布时间】:2009-10-27 13:40:37
【问题描述】:
我单击它并提交了表单,并在表单操作所针对的 url 中附加了一个查询字符串,例如 x=1&y=2。
为什么?
【问题讨论】:
我单击它并提交了表单,并在表单操作所针对的 url 中附加了一个查询字符串,例如 x=1&y=2。
为什么?
【问题讨论】:
x 和 y 值是单击时鼠标指针相对于元素的坐标。
当使用定点设备点击图像时,提交表单并将点击坐标传递给服务器。 x 值以图像左侧的像素为单位,y 值以图像顶部的像素为单位。提交的数据包括name.x=x-value和name.y=y-value,其中“name”是name属性的值,x-value和y-value分别是x和y坐标值。
【讨论】:
它的行为就像一个迷你图像地图。这是设计使然。
【讨论】:
IMAGE 是 FORM 的 INPUT 元素的 TYPE 属性值。它指定可以单击以将信息传递给处理脚本的图像。在实现中,这个表单 TYPE 的行为很像 INPUT TYPE=SUBMIT 字段,但与 SUBMIT 字段不同的是,除了表单数据的其余部分之外,被激活的图像的坐标被发送回服务器。
【讨论】:
从图像提交按钮提交时,IE 和 Firefox 都会创建不同的变量。我的建议是不要依赖它们中的任何一个出现在您的表单处理中。如果必须(以确定按下了多个按钮中的哪一个),则需要检查多个变量。
我会给你三个猜测是哪个浏览器导致了问题,前两个不算。如果你有一个图片按钮
<input type="image" name="restore" value="Restore" src="...">当用户点击时,Mozilla 将返回值
恢复 = 恢复
restore_x = 图像顶部的像素数
restore_y = 图像左边缘的像素数
但是,IE不会返回 restore=Restore Template 键/值。因此,如果您在一个浏览器中开发然后在 IE 中进行测试,您可能会被抓住,因为
isset($_POST['restore'])在 IE 中总是返回 false,但在 Mozilla(可能还有 Opera,但我不知道)中会按预期工作。
【讨论】:
这些是您在图像上单击的坐标,是“图像”类型输入控件的属性。如果你不需要它们,你可以忽略它们。
【讨论】: