リストにある各アイテムのチェックボックスをオン/オフにする「パワー」を持つチェックボックスを作成したいと思います。
これが私が今それを構築したときのビューの一部です(誤った名前と慣習に耐えてください):
<p>
@using (Html.BeginForm("SendObj", "Manager"))
{
<p>
Select / UnSelet All Items @Html.CheckBox("selectAll", true)
</p>
<table id="objToSend">
<tr>
<th>Obj Name</th>
<th>Number In Stock</th>
(...)
</tr>
@for (int i = 0; i < Model.Count(); i++)
{
<tr>
<td>@Html.DisplayFor(x => x[i].m_OthObj.m_ObjName)</td>
<td>@Html.DisplayFor(x => x[i].m_NbInStock)@Html.HiddenFor(x => x[i].m_NbInStock)</td>
(...)
<div id="divChckBox">
<td>
@Html.CheckBoxFor(x => x[i].m_IsSelected)
</td>
</div>
</tr>
}
</table>
<input type="submit" value="Send"/>
}
</p>
「方法」については、少し調べて、このjqueryスクリプトを試しましたが、役に立ちませんでした。
**** EDIT ****
以下に投稿されたコメントに基づいた新しいjQueryを次に示します。アラートはデバッグ目的で存在し、必要に応じて両方が表示されます。
<script type="text/javascript">
$(document).ready(function() {
alert("The document is ready");
$("#selectAll").click(function() {
alert("The case has been clicked");
var chkValue = $(this).is(":checked");
$("#divChckBox").attr("checked", "checked");
});
});
</script>
私はjqueryを使用してもかまいませんが、それがどのように機能するかはまだわかりません。たぶんそれが私が考えていることがうまくいかない理由です。
誰かが私を助けることができますか?ありがとうございました!
* 編集 *
ここに、レンダリングされたページがチェックボックスに対して提供するものを追加します。
<td><input checked="checked" class="chckBoxList" data-val="true" data-val-required="The m_IsSelected field is required." name="[0].m_IsSelected" type="checkbox" value="true" /><input name="[0].m_IsSelected" type="hidden" value="false" /></td>
多分それは何が起こっているかについてのより多くの情報を与えるでしょう。