0

次のような2つのチェックボックスを備えたMVC 2ビューがあります。

                    <%: Html.Label("Is Customer")%>
                   <% 
                       accountStatus = Model.AccountStatus == "Customer" ? true : false;
                    %>
                    <%: Html.CheckBox("IsCustomer", accountStatus.Value, new { onclick = "uncheckAll(this);" })%>

1つのチェックボックスがチェックされている場合、他のチェックボックスがチェックされていないことを望みます。次のようなIDを取得しています:

function uncheckAll(ID) {
    var search_form = document.getElementById('frmAccountEdit');
    var IsTrialAccount = document.getElementById('IsTrialAccount');  // getElementsByTagName("input");
    var IsCustomer = document.getElementById('IsCustomer');

これを機能させる方法は?

4

1 に答える 1

0

よし、以下を試してみてください。IsTrialAccount と IsCustomer の両方をクリアしますが、チェックされたチェックボックスをチェックします。「IsTrialAccount」に同じ機能を持たせたくない場合は、それをボタンクリックイベントに追加せず、「||inputs[j].name == "IsCustomer"」部分を削除してください。

function uncheckAll(Checkbox)
{
    var inputs = document.getElementsByTagName("input");
    for(var j = 0; j < inputs.length; j++) {
      if(inputs[j].type == "checkbox" && 
        (inputs[j].name == "IsTrialAccount" || inputs[j].name == "IsCustomer"))
      {
         inputs[j].checked = false;
      }     
    }
   // Check the selected checkbox
   Checkbox.checked = true;
 }
于 2012-11-24T08:32:01.153 に答える