我的Spring 3.2 MVC应用程序中具有以下形式。 没有调用控制器方法。 这是我的表格。

<form:form commandName="bulletin" method="post" value="/processBulletin">
    <table>
        <tr>
            <td>Name:</td>
            <td><form:input path="name" maxlength="30" /></td>
        </tr>
        <tr>
            <td>Subject:</td>
            <td><form:input path="subject" maxlength="50" /></td>
        </tr>
        <tr>
            <td valign="top">Message:</td>
            <td><form:textarea path="note" cols="70" rows="20" /></td>
        </tr>
        <tr>
            <td><input type="button" value="Submit bulletin" name="submit" /></td>
            <td>&nbsp;</td>
        </tr>
    </table>
</form:form>

这是我的控制器方法。

@RequestMapping(value = "/processBulletin", method = RequestMethod.POST)
@ModelAttribute("bulletin") Bulletin bulletin, Model model,
        BindingResult result) {
    final BindException errors = new BindException(bulletin, "bulletin");

    bulletinValidator.validate(bulletin, errors);
    if (errors.hasErrors()) {
        return "redirect:/approvedBulletins";
    } else {
        try {
            bulletin.setSubject(bulletin.getSubject().trim());
            bulletin.setName(bulletin.getName().trim());
            bulletin.setNote(bulletin.getNote().trim());
            long now = System.currentTimeMillis();
            Calendar date = Calendar.getInstance();
            date.setTimeInMillis(now);
            bulletin.setDay((date.get(Calendar.MONTH) + 1) + "/"
                    + date.get(Calendar.DATE) + "/"
                    + date.get(Calendar.YEAR));

            bulletinDAO.writeBulletin(bulletin.getName(),
                    bulletin.getSubject(), bulletin.getDay(),
                    bulletin.getNote());
        } catch (Exception e) {
            System.out.println(e.getMessage());
            return "FailurePage";
        }
    }

    return "redirect:/approvedBulletins";
}

===============>>#1 票数:1 已采纳

更改按钮以提交。:

input type = "submit"

===============>>#2 票数:0

您正在使用<input type="button" value="Submit bulletin" name="submit" />此标记将不会提交表单-默认情况下不会执行任何操作。 它的主要用途是将JavaScript与AJAX应用程序或非ajax处理(UI / UX)的一部分结合使用。

除非您用JavaScript另行指定,否则<input type="submit" value="Submit bulletin" name="submit" />标记将在用户单击表单时提交表单。

  ask by translate from so

未解决问题?本站智能推荐: