値に基づいてプログラムでチェックボックスをオンまたはオフにするにはどうすればよいですか?つまり、特定のユーザーの場合、値がtrueの場合はチェックボックスをオンにする必要があり、値がfalseの場合はチェックボックスをオフにする必要があります。次の方法でチェックボックスを宣言しました。
<input type="checkbox" class="checkbox">
値に基づいてプログラムでチェックボックスをオンまたはオフにするにはどうすればよいですか?つまり、特定のユーザーの場合、値がtrueの場合はチェックボックスをオンにする必要があり、値がfalseの場合はチェックボックスをオフにする必要があります。次の方法でチェックボックスを宣言しました。
<input type="checkbox" class="checkbox">
なんらかの理由で @Html.CheckBoxFor を使用したくない場合は、引き続き使用したい場合
<input type="checkbox">
次に、これが最善の方法であることがわかりました。
<input @(Convert.ToBoolean(Model.YourPropertyHere) == true ? "checked='checked'" : string.Empty) type="checkbox" />
@Yasser が上記で提供したコード:
checked="@(required ? "checked" : "")"
チェックされた属性を要素にまだ追加していたため、私にとってはうまくいきませんでした。checked="" を設定すると、ステートメント全体をかみそりブロックにラップする代わりに、チェックボックスがチェックされた状態でレンダリングされます。そのようです:
@(Convert.ToBoolean(Model.YourPropertyHere) == true ? "checked='checked'" : string.Empty)
望ましい結果が得られます。
if(condition = true)
{
@Html.CheckBoxFor(x => x.Test, new { @checked = "checked" })
}
else
{
@Html.CheckBoxFor(x => x.Test)
}
お役に立てれば :)
MVC を使用していて、コントローラーからモデル値を正しく渡している場合は、
@Html.CheckBoxFor(model => model.checkBox1)
...は、あなたが必要とすることすべてです。html-helper は、コードを挿入するかどうかを判断するロジックを実行しchecked="checkbox"
ます。
それ以外の場合は、HTML ヘルパーを使用せずに属性を自分で動的に生成できます (他の人がその方法を指摘しています) checked = ""
。説明については、この回答を参照 してください。
コード ビハインドでチェック ボックスの値をチェック/チェック解除する場合は、チェック ボックス タグに ID と runat サーバー属性を含める必要があります。
<checkbox Id="chk" runat="server" class="chkbox"/>
コード ビハインド:
if(yourcondition==true)
chk.checked = true;
else
chk.checked = false;
JavaScriptでやりたいなら
<checkbox Id="chk" class="chkbox"/>
JS:
if(yourcondition==true)
chk.checked = true;
else
chk.checked = false;
チェックボックスの名前が必要です。たとえば、次のようになります。
<input name=checkBox1 type="checkbox" class="checkbox">
機能の場合:
if(x==1){
checkBox1.Checked = true; //To Check
}
else{
checkBox1.Checked = false // To Uncheck
}