Checkbox values do not bind into object when false?

前端 未结 3 902
情歌与酒
情歌与酒 2020-12-14 11:18

I used ModelAttribute to bind object in Spring web application.

Once I notice that, in case an object has an boolean value A is true, its va

相关标签:
3条回答
  • 2020-12-14 11:45

    You can use spring framework tags like it will automatically set you selected value to bean class and then it will be very easy to get its value in your controller class.

    on path you need to put your bean variable name

    and to use this you need to give command name to your form and use that command name to bind your bean object to that jsp

    model.addAttribute("command name" , bean object) use this in your controller to bind object.

    0 讨论(0)
  • 2020-12-14 11:53

    I think that you should use springframework tags - why are you using plain html? If your view is JSP page just import:

    <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
    

    and then you can use:

    <form:checkbox path="path" label="label" />
    

    which handles the problem.

    0 讨论(0)
  • 2020-12-14 12:03

    Spring has a built in workaround.

    Simply add this additional hidden field to the form:

    <input type="hidden" value="on" name="_active"/>

    The parameter with a leading underscore is some kind of marker, to indicate the existence of a checkbox parameter with the same name, but without the underscore.

    Spring should now set lesson.active to false if only _active=on is submitted.

    0 讨论(0)
提交回复
热议问题