【发布时间】:2011-01-15 08:28:05
【问题描述】:
我正在制作原型,我希望搜索按钮链接到示例搜索结果页面。
当使用 jQuery 或纯 JS 单击按钮时,如何使按钮重定向到另一个页面。
【问题讨论】:
-
我要求 js 是因为我没有想到有一个简单的 HTML 解决方案可用。谢谢它解决了我的目的。
标签: javascript jquery redirect buttonclick
我正在制作原型,我希望搜索按钮链接到示例搜索结果页面。
当使用 jQuery 或纯 JS 单击按钮时,如何使按钮重定向到另一个页面。
【问题讨论】:
标签: javascript jquery redirect buttonclick
你可以使用:
location.href = "newpage.html"
在按钮的 onclick 事件中。
【讨论】:
$('#someButton').click(function() {
window.location.href = '/some/new/page';
return false;
});
【讨论】:
return false,点击“Enter 或 Return 键”可能只会将您带到当前 url,而不是重定向到新链接。特别有用,当您有一个文本输入控件时,您想在按下回车键时将其发布到不同的 url。
这应该可以工作..
$('#buttonID').click(function(){ window.location = 'new url'});
【讨论】:
这是你的意思吗?
$('button selector').click(function(){
window.location.href='the_link_to_go_to.html';
})
【讨论】:
window.location而不是document.location,因为这不是规范的方式。
你可以使用 window.location
window.location="/newpage.php";
或者您可以让搜索按钮所在的表单具有您想要的页面的操作。
【讨论】:
使用简单的 Javascript:
<input type="button" onclick="window.location = 'path-here';">
【讨论】:
没有脚本:
<form action="where-you-want-to-go"><input type="submit"></form>
更好的是,既然您只是要去某个地方,请向用户展示“只是去某个地方”的标准界面:
<a href="where-you-want-to-go">ta da</a>
虽然,上下文听起来像“模拟用户提交表单的正常搜索”,在这种情况下,第一个选项是要走的路。
【讨论】:
method="POST")。
在带有 CoffeeScript 的 Rails 3 中,使用不显眼的 JavaScript (UJS):
添加到assets/javascripts/my_controller.js.coffee:
$ ->
$('#field_name').click ->
window.location.href = 'new_url'
内容如下:当 document.ready 事件触发时,向 ID 为 field_name 的 DOM 对象添加一个 onclick 事件,该对象执行 javascript window.location.href='new_url';
【讨论】:
不需要javascript,只需将其包装在链接中
<a href="http://www.google.com"><button type="button">button</button></a>
【讨论】:
您可以使用这个简单的 JavaScript 代码制作搜索按钮以链接到示例搜索结果页面。这里我已经重定向到我主页的'/search',如果你想从谷歌搜索引擎搜索,你可以使用"https://www.google.com/search" 在表单操作中。
<form action="/search"> Enter your search text:
<input type="text" id="searchtext" name="q">
<input onclick="myFunction()" type="submit" value="Search It" />
</form>
<script> function myFunction()
{
var search = document.getElementById("searchtext").value;
window.location = '/search?q='+search;
}
</script>
【讨论】:
这里有很多关于客户端重定向的问题,我不能一概而论……这个是个例外。
重定向不应该来自客户端……它应该来自服务器。如果您无法控制服务器,您当然可以使用 Javascript 选择另一个 URL 去,但是……那不是重定向。重定向是在服务器上使用 300 个状态代码完成的,或者通过在 HTML 中添加 META 标记来完成。
【讨论】:
在您的 html 中,您可以将 data 属性添加到您的按钮:
<button type="submit" class="mybtn" data-target="/search.html">Search</button>
然后你可以使用jQuery来改变url:
$('.mybtn').on('click', function(event) {
event.preventDefault();
var url = $(this).data('target');
location.replace(url);
});
希望对你有帮助
【讨论】:
这是最快(最易读、最简单)的方法,Owens 有效,但它不是合法的 HTML,从技术上讲,这个答案不是 jQuery(但因为 jQuery 是预先准备好的伪代码- 在客户端平台上重新解释为原生 JavaScript - 真的 is 没有 jQuery 这样的东西)
<button onclick="window.location.href='http://www.google.com';">Google</button>
【讨论】:
使用链接并将其设置为按钮样式:
<a href="#page2" class="ui-btn ui-shadow ui-corner-all">Click this button</a>
【讨论】:
来自 YT 2012 代码。
<button href="/signin" onclick=";window.location.href=this.getAttribute('href');return false;">Sign In</button>
【讨论】: