jQuery / Bootstrapを使用して、テーブルの複数の行について、クリック時にグリフィコンを変更します

チャドD

簡単に言えば、私がやろうとしているのは、データテーブルが折りたたまれているときに1つのグリフィコンを使用し、データテーブルが折りたたまれていないときに別のグリフィコンを使用することです。私はこれをこのコードでかなりうまく機能させています:

<script type="text/javascript">
$(function () {
    $('.glyphicon').on('click', function () {
        $(this).toggleClass("glyphicon-collapse-down glyphicon-collapse-up");
    });
});
</script>

これは、テーブルの最初の5つの結果を表示しているときにうまく機能しますが、別のページに移動しようとしても、画像は変更されません。これも私のコード全体の問題である可能性がありますが、最初にこの部分をチェックして、誰かがより良いアイデアを持っているかどうかを確認すると思いました。ページを変更するときに、以下の関数にコールバックする必要があると想定していますが、スクリプトのスキルは最高ではありません。

これが私のコードのHTML部分です:

<table id="pluginInfo" class="table table-striped table-hover dt-responsive details-control" cellspacing="0" width="100%" style="display:none">
<thead>
    <tr class = "info">
        <th>Plugin ID: </th>
        <th>Plugin Name: </th>
        <th>Filename: </th>
        <th>Plugin Type: </th>
    </tr>
    </thead>
    <tbody>
        {% for plugin in plugins %}
        <tr>
            <td><a id="details" href="#{{ plugin.pluginID }}" data-toggle="collapse"><i class="glyphicon glyphicon-collapse-up"></i></a>{{ plugin.pluginID }}</td>
            <td>{{ plugin.pluginname }}</td>
            <td>{{ plugin.filename }}</td>
            <td>{{ plugin.plugin_type }}</td>           
        </tr>
        <tr id="{{ plugin.pluginID }}" class="collapse">
           <td>Hidden data 1</td>
           <td>Hidden data 2</td>
           <td>Hidden data 3</td>
        </tr>
   </tbody>
</table>
オニール

テーブルに追加された新しい行には('.gylphicon').click()イベントハンドラーが自動的にアタッチされないため、Javascriptソリューションはおそらく機能していません

別の方法として、Bootstrap Collapseが折りたたみaria-expanded可能なアンカーに属性を追加しているという事実を利用することで、1行の純粋なCSSで同じ結果を得ることができます。

この例を試してください:

a[aria-expanded="true"] > .glyphicon-collapse-up:before { content: "\e159"; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>

<table id="pluginInfo" class="table table-striped table-hover dt-responsive details-control" cellspacing="0" width="100%" style="">
<thead>
    <tr class = "info">
        <th>Plugin ID: </th>
        <th>Plugin Name: </th>
        <th>Filename: </th>
        <th>Plugin Type: </th>
    </tr>
    </thead>
    <tbody>
        <tr>
            <td><a id="details" href="#plugin1" data-toggle="collapse"><i class="glyphicon glyphicon-collapse-up"></i></a>{{ plugin.pluginID }}</td>
            <td>{{ plugin.pluginname }}</td>
            <td>{{ plugin.filename }}</td>
            <td>{{ plugin.plugin_type }}</td>           
        </tr>
        <tr id="plugin1" class="collapse">
           <td>Hidden data 1</td>
           <td>Hidden data 2</td>
           <td>Hidden data 3</td>
        </tr>
   </tbody>
</table>

CSS属性セレクターのブラウザー互換性:http//quirksmode.org/css/selectors/

bootstrap.csscontent:検索して、CSSプロパティで使用する16進値を見つけることができます。.glyphicon-collapse-down

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

jqueryを使用してクリック時にテーブル行のテキストを変更する方法

分類Dev

jqueryを使用してグリッドビューの変更時にを使用して複数のコントロールの値を取得します

分類Dev

jqueryを使用してパディングをクラスに変更しますが、クリックされたアイテムのみに変更します

分類Dev

jqueryを使用してクリック時にボタンのhtmlコードを変更する際の問題

分類Dev

jqueryを使用してクリック時にアンカータグのテキストを変更するにはどうすればよいですか?

分類Dev

jQueryを使用してテーブルの行をクリックすると、テーブルの行を1つずつ非表示にします

分類Dev

複数のリンクを抽出し、JQueryを使用してコンソールをクリックします

分類Dev

jqueryを使用して、リンクのクリックに基づいてブラウザのタブタイトルを変更します

分類Dev

jQuery DataTablesは、複数の値に基づいて行をフィルタリングします

分類Dev

クリックして、コンテナdivのキャンバスが機能しないフィドルJquery、html5を変更します

分類Dev

ASP.NETはjqueryを使用してクリック時にテーブル行を選択します

分類Dev

JQueryを使用して、行に含まれる属性を持つリンクをテーブルに追加します

分類Dev

チェックボックス付きの複数選択ドロップダウンを使用して、jqueryデータテーブルの列を検索またはフィルタリングします

分類Dev

テーブルの行に割り当てられたクラスに基づいてHTMLテーブルをフィルタリングするjQueryボタン

分類Dev

Jquery-リンクに属するselectタグを使用してリンクのhrefを変更します

分類Dev

リンクをクリックして、jQueryを使用せずに画像のsrcを変更します

分類Dev

ユーザーがテキストフィールドへの入力を一時停止してからコールバックを実行するまで待機するJSプラグインまたはjQuery関数を探しています

分類Dev

jqueryを使用して、テキストボックスの値に応じてdivを非表示またはフィルタリングします

分類Dev

jqueryを使用してクリック時に入力ボタンのテキストを変更するにはどうすればよいですか?

分類Dev

Jqueryは、クリックに基づいて1つの要素の値を別の要素に変更します

分類Dev

jqueryを使用して、タブキーのクリックをいくつかの関数にバインドします

分類Dev

jQueryとCSSを使用して、複数の値を持つリストをフィルタリングするにはどうすればよいですか?

分類Dev

javascriptとjqueryを使用した1つの関数による複数クリックイベント。このコードは正常に機能していますが、いくつかの簡単なコードが必要です

分類Dev

このメソッドを変更して、フォームグループの最後のアイテムを除くすべてのアイテムに適用されるようにします。Angular7リアクティブフォーム。jqueryまたはngModelはありません

分類Dev

ページの読み込み時に非表示になる段落を作成してから、jqueryの表示/非表示を実行し、クリック時にボタン名を変更しようとしています。

分類Dev

jQueryを使用してテーブル内の数値をフィルタリングするにはどうすればよいですか?

分類Dev

クリック時にjQueryがAJAXによって変更されたコンテンツを取得しない

分類Dev

Jqueryを使用してクリック時に複数のCSSファイルをロードするのに助けが必要

分類Dev

jqueryまたはjavascriptを使用して2つのチェックボックスがオンになっている場合、divのリストをフィルタリングするにはどうすればよいですか?

Related 関連記事

  1. 1

    jqueryを使用してクリック時にテーブル行のテキストを変更する方法

  2. 2

    jqueryを使用してグリッドビューの変更時にを使用して複数のコントロールの値を取得します

  3. 3

    jqueryを使用してパディングをクラスに変更しますが、クリックされたアイテムのみに変更します

  4. 4

    jqueryを使用してクリック時にボタンのhtmlコードを変更する際の問題

  5. 5

    jqueryを使用してクリック時にアンカータグのテキストを変更するにはどうすればよいですか?

  6. 6

    jQueryを使用してテーブルの行をクリックすると、テーブルの行を1つずつ非表示にします

  7. 7

    複数のリンクを抽出し、JQueryを使用してコンソールをクリックします

  8. 8

    jqueryを使用して、リンクのクリックに基づいてブラウザのタブタイトルを変更します

  9. 9

    jQuery DataTablesは、複数の値に基づいて行をフィルタリングします

  10. 10

    クリックして、コンテナdivのキャンバスが機能しないフィドルJquery、html5を変更します

  11. 11

    ASP.NETはjqueryを使用してクリック時にテーブル行を選択します

  12. 12

    JQueryを使用して、行に含まれる属性を持つリンクをテーブルに追加します

  13. 13

    チェックボックス付きの複数選択ドロップダウンを使用して、jqueryデータテーブルの列を検索またはフィルタリングします

  14. 14

    テーブルの行に割り当てられたクラスに基づいてHTMLテーブルをフィルタリングするjQueryボタン

  15. 15

    Jquery-リンクに属するselectタグを使用してリンクのhrefを変更します

  16. 16

    リンクをクリックして、jQueryを使用せずに画像のsrcを変更します

  17. 17

    ユーザーがテキストフィールドへの入力を一時停止してからコールバックを実行するまで待機するJSプラグインまたはjQuery関数を探しています

  18. 18

    jqueryを使用して、テキストボックスの値に応じてdivを非表示またはフィルタリングします

  19. 19

    jqueryを使用してクリック時に入力ボタンのテキストを変更するにはどうすればよいですか?

  20. 20

    Jqueryは、クリックに基づいて1つの要素の値を別の要素に変更します

  21. 21

    jqueryを使用して、タブキーのクリックをいくつかの関数にバインドします

  22. 22

    jQueryとCSSを使用して、複数の値を持つリストをフィルタリングするにはどうすればよいですか?

  23. 23

    javascriptとjqueryを使用した1つの関数による複数クリックイベント。このコードは正常に機能していますが、いくつかの簡単なコードが必要です

  24. 24

    このメソッドを変更して、フォームグループの最後のアイテムを除くすべてのアイテムに適用されるようにします。Angular7リアクティブフォーム。jqueryまたはngModelはありません

  25. 25

    ページの読み込み時に非表示になる段落を作成してから、jqueryの表示/非表示を実行し、クリック時にボタン名を変更しようとしています。

  26. 26

    jQueryを使用してテーブル内の数値をフィルタリングするにはどうすればよいですか?

  27. 27

    クリック時にjQueryがAJAXによって変更されたコンテンツを取得しない

  28. 28

    Jqueryを使用してクリック時に複数のCSSファイルをロードするのに助けが必要

  29. 29

    jqueryまたはjavascriptを使用して2つのチェックボックスがオンになっている場合、divのリストをフィルタリングするにはどうすればよいですか?

ホットタグ

アーカイブ