javascript - 使用表单操作将哈希 '#' 符号附加到 url?

标签 javascript forms

所以我有一个带有提交按钮和文本输入的表单...

我想要: http://localhost/

成为: http://localhost/#q=

我在 javascript 中做了一个解决方案,它涉及将表单的“操作”更改为带有哈希 onclick 的 url。但这在 IE 中不起作用。

谁有适用于所有浏览器的解决方案?

最佳答案

我遇到了一个类似的问题,IE 没有从表单操作中提取哈希。

我有一个表格

<form action="/#search" id="search-form">
   <input type="text" class="search-query" placeholder="Search" name="q">
</form>

当我在除 IE 以外的任何工具中提交此表单时,页面转到了

/?q=searchparams#search

但在 IE 中它转到了

/?q=searchparams

为了解决这个问题,我使用 JQuery 绑定(bind)到提交操作并重定向到我希望它转到的页面。

$("#search-form").submit(function() {
    var query = $('input[name="q"]').val();
    window.location.href = 'index.php?q='+query+'#search';
    return false;
}); 

此后一直运行良好。

关于javascript - 使用表单操作将哈希 '#' 符号附加到 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1203856/

相关文章:

jquery - 无法在复选框检查时触发 jquery 函数

forms - notBlank 约束不适用于文件输入 - 具有 OneToMany 关系的表单 Symfony2

c# - 通过在 ASP.NET C# 中关闭 View 状态来清理 URL

javascript - 如何在没有 attachShadow 的情况下创建自定义元素?

javascript - 在 Chrome 中选择 "Open Link in New Tab"选项时,应用程序路由重定向到 Angular 应用程序中的登录

JavaScript 和扩展第 3 方 API

php reCaptcha提交后不会返回确认

delphi - 窗体和框架之间的通信

javascript - jquery beforeunload 消息取决于单击的按钮

javascript - 将 onClick 设置为 false