[英]URL Redirect based on input but if input url does not exist do not redirect cant get PHP to work
[英]Redirect URL based on a value does not always work
我是 JavaScript 的新手,我编写了一个代码,根据他们在搜索栏中输入的内容将用户重定向到另一个页面。
奇怪的是,它有时有效,有时无效(一半一半),有人可能知道是什么原因造成的?
我的 HTML
<form class="form-inline my-2 my-lg-0">
<input id="inputName" class="form-control mr-sm-2" type="search"
placeholder="Search">
<button id="searchBtn" class="btn btn-outline-success my-2 my-sm-0" onclick="searchUser()" type="button">
Search
</button>
</form>
我的 javascript
function searchUser() {
window.open("/user/" + String(document.getElementById('inputName').value));
}
更新:感谢您指出双重身份,我已经删除了额外的身份,但问题仍然存在。
它可能发生在所有字符串上,例如“hsy”,它有时有效,有时无效。
When searching from URL http://127.0.0.1:8000/user/hsy
, if it doesn't work, the URL just display as http://127.0.0.1:8000/user/hsy?
URL 末尾有一个额外的问号。
它不适用于window.open()
因为,如果您阅读控制台,它会说:“在新的 window 中有一个阻塞的打开 'stacksnippets.net/user/vfd',因为请求是在沙盒框架中发出的未设置其“允许弹出窗口”权限。如果 window.open() 不在堆栈片段中,则可以正常工作。”。 因为您使用 StackSnippets 或类似的框架来重定向。 如果你想使用它...
利用...
window.location.replace()
代替...
window.open()
function searchUser() { window.location.replace("/user/" + document.getElementById('inputName').value); }
<form class="form-inline my-2 my-lg-0"> <input id="inputName" class="form-control mr-sm-2" id="base_layout_user_search" type="search" placeholder="Search"> <button id="searchBtn" class="btn btn-outline-success my-2 my-sm-0" onclick="searchUser()" type="button"> Search </button> </form>
感谢@Niet the Dark Absol,他的想法是事实。
我不应该将表单与输入混为一谈。 通过删除表单属性,它可以正常工作。
非常感谢,伙计们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.