如何从spring controllers方法更新html img src?

时间:2016-04-22 04:35:01

标签: javascript java html spring-mvc

我将capcha添加到我的JSP页面(kaptcha库)。它看起来像这样

@RequestMapping(value = "/captcha.jpg", method = RequestMethod.GET)
    public void captcha(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        super.captcha(req, resp);
    }

并在页面

<img src="captcha.jpg"/>

现在我需要创建按钮来更新此验证码。(或当我登录验证码图像时)

我试过这个

<a href="captcha.jpg">
            <img src="captcha.jpg"/>
            </a>

但是当我点击图像时它会单独打开。 我需要在点击后刷新验证码图片。

也许是javaScript,也许是别的什么?怎么做?

更新

我创建了这个

<script>
                function update() {
                    document.getElementById('my-image').setAttribute('src', "captcha.jpg");
                }
            </script>
            <a href="" onclick="update()">
                <img src="captcha.jpg" id="my-image"/>
            </a>

它工作但img更新后我的页面向上滚动。我该如何解决?

1 个答案:

答案 0 :(得分:1)

您的页面正在向上滚动,因为锚标记的默认行为是滚动到顶部,除非您为其指定URL,要滚动的元素或javascript:语句。

要解决此问题,请将javascript:放在锚标记的href内,或删除锚标记并将onclick事件放在图像上,如下所示:

<img src="captcha.jpg" id="my-image" onclick="update()" />