ホームページ > ウェブフロントエンド > フロントエンドQ&A > jqueryでコントロールが利用可能かどうかを確認する方法

jqueryでコントロールが利用可能かどうかを確認する方法

PHPz
リリース: 2023-04-07 15:03:10
オリジナル
678 人が閲覧しました

jQuery は、Web ページに対話性を非常に簡単に実装できるようにする非常に人気のある JavaScript ライブラリです。開発プロセスでは、コントロールを次の操作に使用できるかどうかを判断する必要がある場合があります。これにより、コードの使いやすさ、読みやすさ、保守性が向上します。したがって、この記事では、著者はコントロールが jQuery で使用できるかどうかを確認する方法を共有します。

1. コントロールのステータス

始める前に、コントロールのステータスを理解する必要があります。テキスト ボックス、ドロップダウン ボックス、またはチェック ボックスのいずれであっても、その状態には通常、次の 3 つの状態が含まれます。

  1. 使用可能な状態 (有効): コントロールは操作可能であり、ユーザーは入力、選択、クリックして待つことができます。
  2. 無効状態 (無効): コントロールは操作できず、ユーザーはコントロールに対していかなる操作も実行できません。
  3. 読み取り専用状態 (readonly): コントロールは編集できませんが、選択やクリックなどの操作は可能です。

上記の説明から、読み取り専用状態と使用可能な状態が異なることがわかります。読み取り専用状態では、コントロールは使用できますが、ユーザーは編集できず、選択やクリックなどの操作のみを実行できます。コントロールが読み取り専用かどうかを判断するには、コントロールの readonly プロパティが true かどうかを判断できます。コントロールの使用可能な状態と無効な状態は比較的似ています。混乱を避けるために、コントロールの利用可能な状態を「有効」と呼び、コントロールの無効な状態を「無効」と呼びます。

2. Attr メソッド

jQuery では、attr() メソッドを使用して要素の属性を取得または設定できます。 attr() メソッドは、一致する 1 つまたは複数の要素の属性値を取得できます。属性が存在しない場合は、未定義を返します。

したがって、attr() メソッドを使用して、コントロールが使用可能かどうかを判断できます。

次の例に示すように:

<input type="text" id="text1" disabled="disabled" value="disabled">
<input type="text" id="text2" value="enabled">
ログイン後にコピー
ログイン後にコピー

HTML では、text1 と text2 という 2 つのテキスト ボックスを宣言します。 text1 は無効状態に設定され、text2 は有効状態に設定されます。次に、jQuery で次のコードを使用して、これら 2 つのコントロールが利用可能かどうかを判断できます:

if($('#text1').attr('disabled')) {
    alert('text1 is disabled.');
} else {
    alert('text1 is enabled.');
}

if($('#text2').attr('disabled')) {
    alert('text2 is disabled.');
} else {
    alert('text2 is enabled.');
}
ログイン後にコピー

コードを実行すると、最初のテキスト ボックスが、disabled 属性が true であるかどうかを判断することがわかります。は無効であり、2 番目のテキスト ボックスには無効な属性がないため、未定義が返されます。この結果に基づいて、テキスト ボックスが有効かどうかを判断できます。

3. Prop メソッド

jQuery バージョン 1.6 以降、jQuery には prop() メソッドが導入されました。 attr() メソッドと比較すると、prop() メソッドは要素の属性値を取得または設定できますが、要素の DOM 属性のみを取得または設定できます。

コントロールの有効化または無効化は DOM 属性の状態であるため、prop() メソッドを通じてコン​​トロールの状態を判断できます。

次の例に示すように:

<input type="text" id="text1" disabled="disabled" value="disabled">
<input type="text" id="text2" value="enabled">
ログイン後にコピー
ログイン後にコピー

次のコードを使用して、2 つのテキスト ボックスが有効かどうかを確認できます。

if($('#text1').prop('disabled')) {
    alert('text1 is disabled.');
} else {
    alert('text1 is enabled.');
}

if($('#text2').prop('disabled')) {
    alert('text2 is disabled.');
} else {
    alert('text2 is enabled.');
}
ログイン後にコピー

上記のコードでは、コントロールが有効な場合、prop() メソッドは false を返し、無効な場合、prop() メソッドは true を返します。実際の開発では、prop() メソッドを使用して、コントロールのステータスをより簡単に判断できます。

4. 概要

コントロールが jQuery で使用できるかどうかを確認するには、attr() メソッドまたは prop() メソッドを使用できます。 attr() メソッドは要素の属性値を取得することでコントロールが使用可能かどうかを判断しますが、prop() メソッドは要素の DOM 属性を返し、コントロールが使用可能かどうかも判断します。この記事で紹介した方法を使用すると、コントロールの状態を簡単に判断できます。実際の開発では、ニーズに応じて柔軟にこれらのメソッドを使用できます。

以上がjqueryでコントロールが利用可能かどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート