簡體   English   中英

如何使用javascript定位動態生成的文本框

[英]How to target dynamic generated text boxes using javascript

我有一個動態地在GridView生成的TextBox 當您檢查頁面時, TextBox如下所示。 我試圖找到一種方式來瞄准這一TextBox和所有其他TextBoxes在此GridView ,這樣我可以對他們運行一個腳本。 我找到一種能夠定位此文本框的方法很困難。 我嘗試將一個樣式類設置為GridView並調用它,但它似乎沒有工作。

<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中動態生成的TextBox的最佳方法是什么?

你能給gridview一個班級並單獨打電話給那個班級嗎?

這是需要定位輸入的腳本

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

其中一個想法可能是在文本框上放置一個css類。 如果它是由您的代碼動態生成的。
然后在jQuery中使用類選擇器。

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

甚至你可以使用gridview的id並在gridview中找到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

由於您似乎正在使用jQuery,請查看JQuery選擇器頁面上的選項。 一種選擇是使用通用輸入選擇器,如:

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

上面的代碼假設您的控件名為gvItems,並將呈現網格視圖的客戶端ID以供在JQuery ID選擇器中使用(#MainContent_controlProductsList1_gvItems ...)並查找所有輸入子元素(:input)。

另一種選擇是將類直接放在輸入控件上:

$(".inputClass").keyup(function(){
    this.value = this.value.toUpperCase();
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM