0

jquery のマイナーな問題で立ち往生しています。おそらく、まだ見ていないマイナーな問題です。私は PartialView を持っていて、チェックボックスをチェックできるようにしたいので、他のすべてのチェックボックスをオフにする必要があります。ページを送信する前にチェックボックスを 1 つだけチェックします。

とにかく、ここに私のコードサンプルがあります:

これは私のPartialViewです

@model List<int>
@foreach (var element in Model)
{
    <div id="AddedProductImages">
        <img src="@Url.Action("RetrieveFile", "File", new { id = element })"     alt="@element" width="125px;" />
    <input type="checkbox" name="PrimaryImage" onchange="PrimaryImageChkBox('@element')" id="PrimaryCheckbox'@element'"/>
</div>
}

これは私のJquery関数です

最初にチェックを外してから、2 行目でクリックしたチェックボックスをオンにするように指示することはできませんか?

function PrimaryImageChkBox(id) {
    alert(id);
    $('input[name=PrimaryImage]').removeAttr("checked");
    $('#PrimaryCheckbox' + id).attr('checked', "checked");
}

前もって感謝します :)

4

1 に答える 1

6

ページを送信する前にチェックボックスを 1 つだけチェックします。

それが、チェックボックスではなく、ラジオ ボタンの目的です。同じ名前を使用して、複数のラジオ ボタンをグループ化できます。これにより、同時に選択できるラジオ ボタンは 1 つだけになります。

@model List<int>
@foreach (var element in Model)
{
    <div id="AddedProductImages">
        <img src="@Url.Action("RetrieveFile", "File", new { id = element })" alt="@element" width="125px;" />
        <input type="radio" name="PrimaryImage" />
    </div>
}

それに加えて、javascript を完全に取り除くことができるようになりました。

于 2012-06-18T14:00:16.843 に答える