Привязать флажок к строке вместо логического в форме - PullRequest
0 голосов
/ 09 августа 2011

У меня есть список пользовательских объектов, которые я использую в качестве объекта commandName в моей форме, и обычно каждый объект содержит метку String, тип String (INTEGER или BOOLEAN) и значение. Для типов INTEGER форма отображает <form:input и отлично связывается. Тем не менее, с типами BOOLEAN я хотел бы иметь возможность использовать строки значений 'true' и 'false' и связывать их с флажком. Это было бы легко, если бы они были булевыми типами, но они были строками, а обычный код <form:checkbox не работает. Я тоже пытался использовать скрытый, но это не правильно привязки. Есть простой способ сделать это? Когда я снова отправляю форму, значения флажков должны снова быть строкой, то есть (флажок = "истина", unchecked = "ложь").

1 Ответ

2 голосов
/ 11 августа 2011

Флажки на самом деле не имеют нескольких значений - либо оно имеет значение, указывающее, что оно было проверено, либо оно не имеет.В вашем случае я бы привязал значение, которое вы хотите передать назад и вперед, к скрытому полю формы и использовал бы клиентский JavaScript, чтобы установить значение скрытого поля формы на основе того, нажмет ли пользователь флажок или нет.Кроме того, при загрузке страницы Spring будет устанавливать значение привязанного скрытого поля, и в этот момент вы можете использовать JavaScript для проверки флажка или нет, основываясь на связанном значении в скрытом поле.

SpringФорма:

<form:hidden path="mypassedfield" />

JQuery:

if($(".mycheckbox").prop("checked", true)){
   $(".mypassedfield").val($(".mycheckbox").val());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...