0

我有一个带有验证码图像的简单注册页面,我为用户提供了获取不同验证码图像的选项。起初我只是尝试重新加载给我一个新的验证码图像的页面,但不幸的是,表单随后被清除,这对用户来说是不可接受的和烦人的。

你会如何解决这个问题?如果我从“新图像”链接提交表单,检票口发布过程将在到达我的 onSubmit 函数之前返回各种验证错误,这也是不好的行为。

我想我也可以添加验证码图像的 ajax 部分重新加载,尽管这是一个更复杂的解决方案。任何指向一个好的和干净的解决方案的指针都会很好。

4

1 回答 1

5

Button您可以通过将表单设置为 a或 a来在“新图像”链接中提交表单[Ajax]SubmitLink。然后,您可以通过调用该链接跳过链接方法之外的所有内容:onSubmitsetDefaultFormProcessing(false)

checkForm.add(new SubmitLink("submit") {
    @Override
    public void onSubmit() {
        super.onSubmit();
        // ...new captcha here...
    }
}.setDefaultFormProcessing(false));

这将导致所有内容都被提交(并为下一次渲染保留),但它会跳过值的转换、验证和模型更新。

于 2012-08-16T07:47:45.807 回答