$input.disabled = true;
または
$input.disabled = "disabled";
標準的な方法はどれですか?そして、逆に、無効な入力をどのように有効にしますか?
disabled
プロパティを変更するには、.prop()
関数を使用する必要があります。
$("input").prop('disabled', true); $("input").prop('disabled', false);
.prop()
関数は存在しませんが、.attr()
同様の機能を果たします。
無効な属性を設定します。
$("input").attr('disabled','disabled');
再度有効にするには、適切な方法は .removeAttr()
$("input").removeAttr('disabled');
常に実際のDOMオブジェクトに依存することができ、1つの要素のみを処理する場合は、おそらく他の2つのオプションよりも少し高速です。
// assuming an event handler thus 'this'
this.disabled = true;
.prop()
or.attr()
メソッドを使用する利点は、選択した一連のアイテムのプロパティを設定できることです。
注: 1.6であり.removeProp()
のようにたくさんの音の方法removeAttr()
、それは使用すべきではないようなネイティブの性質上'disabled'
の文書からの抜粋:
注:このメソッドを使用して、checked、disabled、selectedなどのネイティブプロパティを削除しないでください。これにより、プロパティが完全に削除され、削除されると、要素に再度追加することはできません。代わりに、.prop()を使用してこれらのプロパティをfalseに設定します。
実際、このメソッドには多くの正当な使用法があるとは思えません。ブール小道具は、1.5の「属性」の対応物のように「削除」するのではなく、falseに設定する必要がある方法で実行されます。
新しい慣習のためだけに&&今後適応可能にするため(ECMA6(????)で大幅に変更されない限り):
$(document).on('event_name', '#your_id', function() { $(this).removeAttr('disabled');
});
そして
$(document).off('event_name', '#your_id', function() { $(this).attr('disabled','disabled');
});
// Disable #x
$( "#x" ).prop( "disabled", true ); // Enable #x $( "#x" ).prop( "disabled", false );
inputやtextareaなどのフォーム要素を無効/有効にする必要がある場合があります。Jqueryは、disabled属性を「disabled」に設定することでこれを簡単に行うのに役立ちます。例:
//To disable
$('.someElement').attr('disabled', 'disabled');
無効化された要素を有効にするには、この要素から「disabled」属性を削除するか、その文字列を空にする必要があります。例:
//To enable
$('.someElement').removeAttr('disabled');
// OR you can set attr to ""
$('.someElement').attr('disabled', '');
参照:http://garmoncheg.blogspot.fr/2011/07/how-to-disableenable-element-with.html
$("input")[0].disabled = true;
または
$("input")[0].disabled = false;
これをコードのグローバルな場所に配置できます。
$.prototype.enable = function () { $.each(this, function (index, el) {
$(el).removeAttr('disabled'); }); } $.prototype.disable = function () {
$.each(this, function (index, el) { $(el).attr('disabled', 'disabled');
});
}
そして、あなたは次のようなものを書くことができます:
$(".myInputs").enable(); $("#otherInput").disable();
現在の状態を反転したいだけの場合(トグルボタンの動作など):
$("input").prop('disabled', ! $("input").prop('disabled') );
それらを使用して、任意の要素を有効/無効にできる方法はたくさんあります。
アプローチ1
$("#txtName").attr("disabled", true);
アプローチ2
$("#txtName").attr("disabled", "disabled");
jQuery 1.7以降のバージョンを使用している場合は、attr()の代わりにprop()を使用してください。
$("#txtName").prop("disabled", "disabled");
要素を有効にしたい場合は、無効にするために行ったのとは逆の操作を行う必要があります。ただし、jQueryには、属性を削除する別の方法があります。
アプローチ1
$("#txtName").attr("disabled", false);
アプローチ2
$("#txtName").attr("disabled", "");
アプローチ3
$("#txtName").removeAttr("disabled");
繰り返しますが、jQuery 1.7以降のバージョンを使用している場合は、attr()の代わりにprop()を使用してください。そうです。これは、jQueryを使用して要素を有効または無効にする方法です。
2018年の更新:
今そこにjQueryのは必要ません、それはしばらく以来となっていますdocument.querySelector
かdocument.querySelectorAll
(複数の要素のために)$、加えて、より明確なものとほとんど同じ仕事をしますgetElementById
、getElementsByClassName
、getElementsByTagName
「input-checkbox」クラスの1つのフィールドを無効にする
document.querySelector('.input-checkbox').disabled = true;
または複数の要素
document.querySelectorAll('.input-checkbox').forEach(el => el.disabled = true);
jQuery prop()メソッドを使用して、フォーム要素を無効または有効にしたり、jQueryを使用して動的に制御したりできます。prop()メソッドにはjQuery1.6以降が必要です。
例:
<script type="text/javascript">
$(document).ready(function(){ $('form input[type="submit"]').prop("disabled", true);
$(".agree").click(function(){ if($(this).prop("checked") == true){
$('form input[type="submit"]').prop("disabled", false); } else if($(this).prop("checked") == false){
$('form input[type="submit"]').prop("disabled", true);
}
});
});
</script>
無効にする:
$('input').attr('readonly', true); // Disable it. $('input').addClass('text-muted'); // Gray it out with bootstrap.
有効にする:
$('input').attr('readonly', false); // Enable it. $('input').removeClass('text-muted'); // Back to normal color with bootstrap.
入力タイプに対してtrueを無効にします:
特定の入力タイプの場合(例:テキストタイプ入力)
$("input[type=text]").attr('disabled', true);
すべてのタイプの入力タイプ
$("input").attr('disabled', true);
これは私のために働きます
$("#values:input").attr("disabled",true); $("#values:input").attr("disabled",false);
このように使用して、
$( "#id" ).prop( "disabled", true ); $( "#id" ).prop( "disabled", false );
@gnarf answerを使用して、関数として追加しました
$.fn.disabled = function (isDisabled) {
if (isDisabled) {
this.attr('disabled', 'disabled');
} else {
this.removeAttr('disabled');
}
};
次に、このように使用します
$('#myElement').disable(true);
すべて無効にするinput
:
[...document.querySelectorAll('input')].map(e => e.disabled = true);
で無効にinput
するid="my-input"
document.getElementById('my-input').disabled = true;
問題はJQueryに関するもので、参考までにです。
アプローチ4(これはワイルドコーダーの回答の拡張です)
txtName.disabled=1 // 0 for enable
<input id="txtName">
特徴的なスターのコリン・エッグレスフィールドは、RomaDrama Liveでのスリル満点のファンとの出会いについて料理しました!加えて、大会での彼のINSPIREプログラム。
ノーザンエクスポージャーが90年代の最も人気のある番組の1つになった理由を確認するには、Blu-rayまたはDVDプレーヤーをほこりで払う必要があります。
ドミニカのボイリング湖は、世界で2番目に大きいボイリング湖です。そこにたどり着くまでのトレッキングは大変で長いですが、努力する価値は十分にあります。
DropMixはNFC対応のカードゲームで、基本的にはリミックスアーティストになります。現在、Amazonでは$ 30まで下がっており、これまでで最高の価格に匹敵します。ロックバンドで有名なHarmonixによって開発されたDropMixは、おそらく少し野心的すぎるように思われます。結局のところ、ほとんどの人は素晴らしいリズムを持っていませんが、ゲームは驚くほどうまく実行されます。
写真:APメアリーJ.ブライジは、間もなくハリウッドウォークオブフェイムのスターを獲得します。これは、メアリーJよりもハリウッドウォークオブフェイムのほうが正直なところ恩恵です。
画像:グラズ工科大学/ NataschaEiblがデザインしたロゴ。MeltdownとSpectreは、攻撃者がシステムメモリに保存されているあらゆる種類の情報にアクセスできるようにする2つの脆弱性に付けられた名前です。
日本人に襲われたときに真珠湾にいた97歳の第二次世界大戦のベテランが、ニューヨークのブルックリンから追い出されています。
Zendaya shared a sweet photo in honor of boyfriend Tom Holland's 26th birthday Wednesday
シーレン「Ms.JuicyBaby」ピアソンは、先月脳卒中で入院した後、「もう一度たくさんのことをする方法を学ばなければならない」ため、言語療法を受けていることを明らかにしました。
オスカー受賞者の世紀半ばの家には、3つのベッドルーム、2つのバス、オーシャンフロントの景色があります。
Bioscoutは、農家を運転席に置くという使命を負っています。Artesian(GrainInnovate)やUniseedと並んで、最新のシードラウンドでチームを支援できることをうれしく思います。問題真菌症による重大な作物の損失は、農民にとって試練であることが証明されています。
遠隔医療は、パンデミック後の時代では新しいものではなく、時代遅れの分野でもありません。しかし、業界を詳しく見ると、需要と供給の強力な持続可能性と、米国で絶え間ない革命となる強力な潜在的成長曲線を示しています。
2021年は、世界的なベンチャーキャピタル(VC)の資金調達にとって記録的な年でした。DealStreetAsiaによると、東南アジアも例外ではなく、この地域では年間で記録的な25の新しいユニコーンが採掘されました。
計算に対する私たちの欲求とムーアの法則が提供できるものとの間には、指数関数的に増大するギャップがあります。私たちの文明は計算に基づいています—建築と想像力の現在の限界を超える技術を見つけなければなりません。