【发布时间】:2013-10-25 17:18:39
【问题描述】:
在我的 html 文档中,我有这个:
<button onclick="doFunction()" type="submit" ...>Button</button>
函数如下所示:
doFunction() {
var goToThisUrl = "www.spring_controller_method.com?redirectUrl=this_page";
window.location.href = goToThisUrl;
}
doFunction() 中的url 是Java Spring 控制器方法的url。在该方法中,它操作数据库并返回一个字符串以重定向到它来自的页面:return "redirect:" + redirectUrl。
问题是按钮不起作用。当我单击该按钮时,页面会刷新,但不会对数据库中的数据进行操作。我知道这不是 spring 控制器方法的问题的原因有两个:
- 我在控制器方法中有一个断点,它没有被命中。
- 当我使用相同的
doFunction()代码并在 Chrome 开发者控制台上运行它时,会命中控制器方法断点,并更改数据库中的数据。
您知道为什么会发生这种情况吗?
【问题讨论】:
-
我猜你的表单正在提交 (button type="submit"),返回 false 以防止你的函数首先执行默认操作。
标签: javascript html function button dom-events