【问题标题】:Javascript redirection not working in FlaskJavascript 重定向在 Flask 中不起作用
【发布时间】:2020-06-12 21:09:26
【问题描述】:

我正在构建一个烧瓶网站,并尝试制作一个始终位于顶部菜单的搜索栏,我本来希望在 Python 后端处理它,但如果不包含每个内容,我找不到这样做的方法支持页面处理它的代码(如果它是唯一的方法很好)所以我决定尝试让它与 JavaScript 一起工作。这是我的代码(没有我发现与问题无关的部分):

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<form>
<input type="search" id="searchbar"/>
<button id="goto">Search</button>
</form>
<script>
            document.getElementById("goto").addEventListener("click", goTo);
            function goTo()
            {
                var result = document.getElementById("searchbar").value;
                window.location.href = "/users/"+result;
            }
</script>
</body>
</html>

它应该做的是将我重定向到“http://myip/users/WhatItyped”,而它只是添加“/?”到 URL 的末尾,知道这是为什么吗?

更新:我发现如果我在定义结果之前添加警报,它会起作用

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    尝试使用window.location.pathname

    JavaScript Window Location 声明 href 指向完整的 URL,包括协议和主机名。由于您没有更改其中任何一个,因此您可以使用 pathname 从根目录更改相对路径。

    这之前也有人回答过: How can I extract and then change the url path using javascript?

    【讨论】:

    • 如果您提供解释为什么这是首选解决方案并解释它是如何工作的,它会更有帮助。我们想要教育,而不仅仅是提供代码。
    • 不幸的是,这不起作用,但我确实发现问题与我放在它上面的表单标签相关,我在这里的代码中没有使用愚蠢的标签,删除它是有效的。有什么方法可以使用表单标签进行这项工作吗?感谢您的帮助!
    • 我在上面复制了你的代码,进行了更改,并且它在 Firefox 中运行,所以我不确定为什么它不适合你
    猜你喜欢
    • 2018-04-19
    • 1970-01-01
    • 2013-01-10
    • 1970-01-01
    • 2014-01-19
    • 2023-03-14
    • 2017-12-07
    • 2014-01-09
    • 2017-10-06
    相关资源
    最近更新 更多