1

私は次のことをしています(アンダースコアを前に付けることで春の規則を使用していることに注意してください):

<input type = "checkbox" name = "speakersIds [$ {speaker.id}]" value = "true" /> 
<input type = "hidden" name = "_ SpeakersIds [$ {speaker.id}]" value = " false」/>

SpeakerIdsは、私のモデルのマッププロパティです。

Map <Long、Boolean> SpeakersIds;

問題は、私のコントローラーで、チェックされていないチェックボックスがfalseに設定されていないことです。

例:

SpeakerIds [0]がチェックされている場合、speakersIds.get(0)== true

SpeakerIds [0]がチェックされていない場合、speakersIds.get(0)==nullです。<---これは==falseであるべきではありませんか?

なんで?

4

1 に答える 1

0

マップの場合、アンダースコアの規則は機能していないようです。

最後に、非表示の入力で同じプロパティ名を使用しました。

<input type = "checkbox" name ='speakersIds [" $ {speaker.id}"]' value = "True" /> 
<input type = "hidden" name ='speakersIds ["$ {speaker.id}"] 'value = "False" />

テスト中に、speakersIdのタイプをMap <Long、Boolean>からMap <String、Boolean>に変更する必要がありましたが、mapキーでも機能するはずです。

于 2013-01-30T01:25:59.957 に答える