0

動的に生成TextBoxされる があります。GridViewページを調べると、TextBox次のように表示されます。これTextBoxと他のすべてをターゲットにして、それらに対してスクリプトを実行できるようにする方法を見つけようとしています。このテキスト ボックスをターゲットにする方法を見つけるのに苦労しています。スタイル クラスを に設定して呼び出してみましたが、機能していないようです。 TextBoxesGridViewGridView

<input name="ctl00$MainContent$controlProductsList1$gvItems$ctl04$Option-30482_e0edc10a-7dba-40d0-a4f1-7c4c5801c0ca" type="text" id="MainContent_controlProductsList1_gvItems_Option-30482_e0edc10a-7dba-40d0-a4f1-7c4c5801c0ca_2">

javascript を使用して、GridView で動的に生成される TextBoxes をターゲットにする最良の方法は何ですか?

グリッドビューにクラスを与えて、そのクラスだけを呼び出すことはできますか?

これは、入力をターゲットにする必要があるスクリプトです

$('#inputID').keyup(function(){
    this.value = this.value.toUpperCase();
});
4

2 に答える 2

1

アイデアの 1 つは、テキスト ボックスに css クラスを配置することです。コードによって動的に生成される場合。
次に、jQuery でクラス セレクターを使用します。

  $('.inputcss').keyup(function(){
               this.value = this.value.toUpperCase();
   });

またはid、グリッドビューを使用して、グリッドビュー内でinput:textを見つけて、関数を使用することもできます。以下はサンプルコードです

 $('#<%=grid.ClientID%>')
 .find('tr')
 .each(function(row) {
      $(this).find('input')
            .each(function(col) {
                      $(this).keyup(function(){
               this.value = this.value.toUpperCase();
                  });

                  } 
             });
  });

}); 

編集 1

大文字のみで表示したい場合は、次のように css を使用できます。

 h1 {text-transform:uppercase;}

詳細

http://www.w3schools.com/cssref/pr_text_text-transform.asp

于 2013-07-05T14:54:12.923 に答える
1

jQuery を使用しているようですので、 JQuery セレクターページでオプションを確認してください。1 つのオプションは、次のような一般的な入力セレクターを使用することです。

$("#<%=gvItems.ClientID%> :input").keyup(function(){
      this.value = this.value.toUpperCase();
});

上記のコードは、コントロールが gvItems と呼ばれることを前提としており、JQuery ID セレクター (#MainContent_controlProductsList1_gvItems...) で使用するグリッド ビューのクライアント ID をレンダリングし、すべての入力子要素 (:input) を検索します。

別のオプションは、クラスを入力コントロールに直接配置することです。

$(".inputClass").keyup(function(){
    this.value = this.value.toUpperCase();
});
于 2013-07-05T15:01:34.563 に答える