7

statusドメインで呼び出された属性があり、これはStringタイプが 2 つの値のいずれかを持つことができますApplied , NotApplied

この値を入力するための 2 つのチェック ボックスがあります。私の編集ページで、これら2つのチェックボックスを表示したいと思います。

の値が の場合 statusApplied対応するチェックボックスをオンにする必要があります。

私のコード

 <g:message code="publicRuleInstance.course.label" default="Applied" />
<g:checkBox name="status " value="${publicRuleInstance?.status }" />

<g:message code="publicRuleInstance.course.label" default="NotApplied" />
<g:checkBox name="status " value="${publicRuleInstance?.status }" />

ただし、ここでは両方のチェックボックスがオンになっています。

値を確認する方法が必要です。つまり、ステータス = 適用済みの場合、その特定のチェックボックスをオンにする必要があります。そうでない場合は、オフにする必要があります。

それを行う方法はありますか?

4

2 に答える 2

5

docsで説明されているように、属性を使用しcheckedて checkBox の状態を制御します。ここで、式を追加して の状態を判断できます。g:checkBox

<g:message code="publicRuleInstance.course.label" default="Applied" />
<g:checkBox name="status " value="Applied" checked="${publicRuleInstance?.status == 'Applied'}"/>

<g:message code="publicRuleInstance.course.label" default="NotApplied" />
<g:checkBox name="status " value="NotApplied" checked="${publicRuleInstance?.status == 'NotApplied'}"/>

値の 1 つだけを許可したい場合、またはApplied g :radioGroupを選択することをお勧めします。checkBox を使用すると、ユーザーは値との両方を選択できます。NotAppliedAppliedNotApplied

于 2012-07-27T05:06:00.387 に答える
2

checkBoxの値はブール値である必要があります

<g:message code="publicRuleInstance.course.label" default="Applied" />
<g:checkBox name="status " value="${publicRuleInstance?.status =="Applied"}" />

<g:message code="publicRuleInstance.course.label" default="NotApplied" />
<g:checkBox name="status " value="${publicRuleInstance?.status == "NotApplied" }" />
于 2012-07-26T13:41:12.957 に答える