2017-07-09 10 views
0

チェックボックスをオンにした場合にのみマルチセレクタを有効にしようとしています。私のコードは、アラートを生成しているが、jQueryを使用してセレクタを有効にする際にエラーが発生しました

セレクタ&チェックボックスHTML +スクリプトセレクタを有効にしません:機能を有効にする

Chechbox and selector code

$("#checkbox").bind("click", function() { 

    if ($('#checkbox').is(":checked")) 
      { alert("checked"); 
      $("#sel").attr('disabled',false); 

      } 
    else 
      { 
      //Do nothing 
      } 
}); 
+1

こんにちはムハンマド、ようこそ。常にスクリーンショットとしてではなく、書式付きテキストとしてコードを投稿してください。 – petezurich

+1

あなたは 'multiselect'というプラグインを使用しているようです。このようなプラグインはマークアップを変更して他の要素からドロップダウンを作成します。 – adeneo

+0

@adeneo私はこのチュートリアルを持っています。http://davidstutz.github.io/bootstrap-multiselect/ –

答えて

-1

無効項目が論理的に編集できません属性を削除する必要があります。

element.removeAttribute("disabled"); 
+1

これは、.removeAttrではなく、ちょうど.removeAttrです。 – Difster

+0

実際には、それも 'element.prop( 'disabled'、false) 'それはプロパティーだから – adeneo

+0

@Difster Talhaは正しいです、それはJavaScriptのjQueryではありません。ここでドキュメントを確認してくださいhttps://www.w3schools.com/jsref/met_element_removeattribute.asp – Shiladitya

-1

これを試してみてください。複数選択を使用して

$("#sel").removeAttr('disabled'); 
0

、これを試してみてください。手始めに

$('#example-getting-started').removeAttr('disabled'); 

// And maybe, refresh the plugin 
$('#example-getting-started').multiSelect('refresh'); 
0

を、あなたはそれが内に定義されていない、あなたのjQueryの、内のセレクタとしてID "sel"を使用していますあなたのHTML

私は先に進んで、"#example-getting-started"に変更しました。 falseではなく、無効な属性の値を"false"に変更することに加えて、

$(document).on("click", function(e){ 
    if($("#checkbox").is(":checked")){ 
     alert("Checked"); 
     $("#example-getting-started").attr("disabled", "false"); 
    } 
}); 

これはうまくいきます。 :)

関連する問題