javascript - 根据用户输入重定向到 html 页面
问题描述
我在用户输入城市位置的网页上有一个文本框。我希望将其合并到网址中。我有一个处理这些 url 的 Spring 控制器,但我首先无法重定向到该 url。这是我的代码
<span id = "form">
<form id = "input" target="_self" action="http://localhost:8090/location/city" method="GET" th:action="@{/location/city}">
<label for="loc" align = right>Location:</label>
<input type="text" placeholder="Enter Location" th:name= "location" id="loc">
<input type="submit" value="Submit" onclick="setMode()">
</form>
<script>
document.getElementById("input").action = "http://localhost:8090/location/" + document.getElementById("loc").value;
</script>
我只想添加城市名称,但是当用户单击提交时,url 变为“/?location=cityname”,我想要“/location/cityname.
解决方案
<input type="submit" value="Submit" onclick="setMode()">
type="submit" 将触发提交表单的基本浏览器标准。当您将其更改为没有 href 的锚链接时,它将起作用。您当然可以设置锚链接的样式,使其看起来像一个按钮。否则你应该使用 event.preventDefault(); 防止表单提交。
您可以使用;
<a onclick='setMode()' >Submit</a>
代替;
<input type="submit" value="Submit" onclick="setMode()">
推荐阅读
- ionic-framework - IONIC 4 beta 稳定吗?
- flutter - 如何声明应用程序级变量供所有组件使用
- angular - 在 Typescript Angular cli 项目中自动包含 node_modules 之外的库的声明文件
- ios - 在后台调试 React Native 应用程序
- php - Drupal 7 全新安装显示会话错误
- javascript - ReactJS:如何监听子组件更新?
- python - 如何摆脱python中的return关键字错误
- jenkins - 在 Jenkins 管道中看不到阶段时间
- c# - 当在另一个类方法中将对象作为参数传递而没有单词 ref 时,对象属性会发生变化。
- chart.js - 填充和折线组合的折线图