0

さまざまな権限を持つユーザーのドロップダウンがあります。ユーザーのさまざまな権限は、表示、編集、または削除です。ドロップダウンからユーザーを選択すると、チェックボックスは、ユーザーが持っている権限に応じて更新されます。.prop() と .attr() を使用してみましたが、役に立ちませんでした。http://jsfiddle.net/DWM4r/

HTML

              <select class='select210'>
                <option class='user1'>wjazi@deloitte.com</option>
                <option class='user2'>aschwem@company.com</option>
                <option class='user3'>tcooksnow@usa.com</option>
              </select>  
              <input type='checkbox' checked class='viewChk' />View
              <input type='checkbox' checked class='editChk' />Edit
              <input type='checkbox' checked class='delChk' />Delete

jQuery

     $('.user3').click(function() {
          $('.viewChk').attr('checked', true);
          $('.editChk').attr('checked', false);
      $('.delChk').attr('checked', false);
     });
     $('.user2').click(function() {
          $('.viewChk').prop('checked', true);
          $('.editChk').prop('checked', true);
          $('.delChk').prop('checked', false);
     });
     $('.user1').click(function() {
          $('.viewChk').prop('checked', true);
          $('.editChk').prop('checked', true);
          $('.delChk').prop('checked', true);
     });
4

2 に答える 2

2

.propチェックボックスを設定する正しい方法です。

クリック イベントが発生しないため、イベントがトリガーされていません。

を試してみてください。属性ではなく属性としてデータを持つように s.changeを調整したことに注意してください。デフォルトの選択選択とデフォルトのチェックボックスが一致していることを確認するか (user1 の例のように)、手動でトリガーします。optionvalueclass$('.select210').change()

.prop('disabled', true)ユーザーがこれらのデフォルトを変更できないようにする場合も、設定する必要があります。

フィドル

<select class='select210'>
  <option value='user1'>wjazi@deloitte.com</option>
  <option value='user2'>aschwem@company.com</option>
  <option value='user3'>tcooksnow@usa.com</option>
</select>  
<input type='checkbox' checked class='viewChk' />View
<input type='checkbox' checked class='editChk' />Edit
<input type='checkbox' checked class='delChk' />Delete

$('.select210').change(function(){
  var value= $(this).val();
  switch(value){
    case 'user1':
      $('.viewChk').prop('checked', true);
      $('.editChk').prop('checked', true);
      $('.delChk').prop('checked', true);
      break;
    case 'user2':
      $('.viewChk').prop('checked', true);
      $('.editChk').prop('checked', true);
      $('.delChk').prop('checked', false);
      break;
    case 'user3':
      $('.viewChk').prop('checked', true);
      $('.editChk').prop('checked', false);
      $('.delChk').prop('checked', false);
      break;
  }
});
于 2013-10-10T16:16:25.643 に答える