window.location.href 不工作
Posted
技术标签:
【中文标题】window.location.href 不工作【英文标题】:window.location.href not working 【发布时间】:2013-08-20 11:24:05 【问题描述】:我的网站是http://www.collegeanswerz.com/。我正在使用导轨。该代码用于搜索大学。我希望用户能够输入大学名称,点击回车,然后被带到网址,而不是看到搜索结果(如果用户正确输入了名称。如果不是,我想显示搜索结果) .当我尝试让它工作时,我使用“a”和“***.com”作为占位符。
我正在使用基于此的 window.location.href:How to redirect to another webpage in javascript/jQuery?
javascript
$("#search_text").submit(function()
if ($("#search_field").val() == "a")
window.location.href = "http://***.com";
alert('worked');
);
布局文件
<%= form_tag("/search", :method => 'get', :id => 'search_text', :class => 'form_search') do -%>
<div id="search"> <%= search_field_tag :search, params[:search], :placeholder => 'enter college', :id => "search_field", :class => 'input-medium search-query' %></div>
<% end -%>
static_pages_controller.rb
def search
@colleges = College.search(params[:search])
end
警报正在运行,它告诉我 if 语句中的内容应该正在执行。但它把我带到了正常的搜索结果而不是 ***.com。这是为什么呢?
【问题讨论】:
我看到我投了反对票。你能告诉我为什么吗?乍一看,我认为这个问题没有任何问题。 我没有否决这个问题,但至少,您应该显示表单的 html。 好的,我会编辑问题。 window.location() not working, not opening page的可能重复 显示生成的 HTML,而不是 Ruby 代码。 【参考方案1】:您的代码运行后,浏览器仍在提交表单。
将return false;
添加到处理程序以防止这种情况发生。
【讨论】:
谢谢你,你是对的,它成功了。这里也解决了这个问题 (***.com/questions/6094130/…)。在我问这个问题之前我没有意识到这一点。 你刚刚救了我的命。 但是如果我返回false,提交功能就没有用了。【参考方案2】:试试这个
`var url = "http://***.com";
$(location).attr('href',url);`
或者你可以这样做
// similar behavior as an HTTP redirect
window.location.replace("http://***.com");
// similar behavior as clicking on a link
window.location.href = "http://***.com";
并在函数调用结束时添加 return false
【讨论】:
我可以知道我投反对票的原因吗? @亚当泽纳 你在得到那些反对票很久之后才添加了正确的答案(返回 false)。 @Juhana 正在编辑我的答案,同时得到了那些反对票。但是在投反对票之前添加评论是否有意义,因为这些反对票会让我想现在就回答任何问题 如果它让你在回答之前思考......任务完成。 @ArihantGodha:给出错误或错误的答案会使答案被否决。稍后对其进行编辑,使其说明另一个答案已经说过的内容(有意或无意)不会扭转这种情况。当您编辑您的答案使其成为另一个答案的副本时,请将其删除。【参考方案3】:请检查您使用的是 //
而不是 \\
错误,如下所示
Wrong:"http:\\***.com"
Right:"http://***.com"
【讨论】:
【参考方案4】:如果有人在使用 return false;
后遇到问题。然后使用下面的。
setTimeout(function()document.location.href = "index.php",500);
【讨论】:
以上是关于window.location.href 不工作的主要内容,如果未能解决你的问题,请参考以下文章
Jquerydirtyforms 在 DIV click 和 window.location.href 上无法正常工作
为啥window.location.href无效,页面不跳转
不经验证直接使用 window.location.href 是不是安全
window.location.href 放置在单独的JS文件中使用时问题