Digg 如何删除“&x=0&y=0”来自他们的搜索结果 URL?

发布于 2024-08-16 09:26:56 字数 438 浏览 7 评论 0原文

我使用图像作为搜索表单的提交按钮,即:

<input id="search" type="image" alt="Search" src="/images/searchButton.png" name=""/>

这在 Chrome 和 Firefox 中有一个不幸的副作用 - 参数 &x=0&y=0 出现在搜索结果 URL 的末尾,例如,如果我搜索“食物”,我会被定向到以下页面:

main/search?search=food&x=0&y=0

一些在线搜索表明,这是使用图像提交表单时的标准行为。

我注意到 Digg.com 使用图像来提交其搜索表单,但避免了这种行为。我不明白他们是怎么做到的。他们似乎没有使用 Javascript 来提交表单。谁能告诉我吗?

I'm using an image as the submit button for a search form, i.e.:

<input id="search" type="image" alt="Search" src="/images/searchButton.png" name=""/>

This has an unfortunate side effect in Chrome and Firefox--the parameters &x=0&y=0 appear on the end of the search results URL, for example if I search for "food" I am directed to the page:

main/search?search=food&x=0&y=0

Some hunting around online has indicated that this is standard behavior when you use an image to submit a form.

I noticed that Digg.com uses an image to submit its search form but avoids this behavior. I can't figure out how they do it. They don't seem to be using Javascript to submit the form. Can anyone tell?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

尽揽少女心 2024-08-23 09:26:56

Digg 使用 JavaScript 来做到这一点。尝试在浏览器中禁用 JavaScript 的情况下提交搜索表单。

Digg is using JavaScript to do that. Try submitting the search form with JavaScript disabled in your browser.

春庭雪 2024-08-23 09:26:56

您可以使用

<button type="submit" style="border: 0; background: transparent">
  <img src="image.png"></img>
</button>

Instead of using an <input type="image">, you could use a <button> element:

<button type="submit" style="border: 0; background: transparent">
  <img src="image.png"></img>
</button>
没有伤那来痛 2024-08-23 09:26:56

这些参数表示在图像上进行单击的位置,这是大多数(如果不是全部)浏览器在使用图像作为提交按钮时的默认行为。您可以使用基本上通过 JavaScript 的解决方法来提交表单,就像您在 watain 的示例中看到的那样。或者,您可以通过利用 form.submit() 作为附加到该图像的操作来创建一个不是表单元素的提交按钮。

Those parameters denote the location in which the click was exercised upon the image, which is the default behavior of most if not all browsers when it comes to using images as submit buttons. You can use a workaround that basically goes through JavaScript to submit your form, much like what you see in watain's example. Or you can create a submit button thats not a form element, by utilizing form.submit() as the action attached to that image.

蓝礼 2024-08-23 09:26:56

您可以使用 Javascript 来提交这样的表单,这仍然是最简单的方法:

<script>
yourForm.onSubmit = function() {
 location.href = 'main/search?search=' + encodeURIComponent(yourForm.elements['query'].value);
 return false;
}
</script>

不幸的是,我不知道他们如何在没有 Javascript 的情况下做到这一点。

编辑:顺便说一句,您还可以使用一个简单的方法,它会在单击时提交表单。

You could use Javascript to submit the form like that, it's still the easiest way:

<script>
yourForm.onSubmit = function() {
 location.href = 'main/search?search=' + encodeURIComponent(yourForm.elements['query'].value);
 return false;
}
</script>

Unfortunately I don't know how they do it without Javascript.

EDIT: Btw you could also use a simple which will submit the form when it gets clicked.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文