如何使用javascript定位动态生成的文本框
本文关键字:文本 动态 何使用 javascript 定位 | 更新日期: 2023-09-27 18:21:06
我有一个在GridView
中动态生成的TextBox
。检查页面时,TextBox
如下所示。我正试图找到一种方法来针对这个TextBox
和这个GridView
中的所有其他TextBoxes
,这样我就可以针对它们运行脚本。我很难找到一种针对这个文本框的方法。我尝试将样式类设置为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为目标的最佳方式是什么?
你能给网格视图一节课,然后单独调用那节课吗?
这是需要针对输入的脚本
$('#inputID').keyup(function(){
this.value = this.value.toUpperCase();
});
由于您似乎在使用jQuery,请在jQuery选择器页面上查看您的选项。一种选择是使用通用的输入选择器,如:
$("#<%=gvItems.ClientID%> :input").keyup(function(){
this.value = this.value.toUpperCase();
});
上面的代码假设您的控件名为gvItems,并将呈现网格视图的客户端ID以供JQuery ID选择器(#MainContent_controlProductList1_gvItems.)使用,并查找所有输入子元素(:input)。
另一种选择是将一个类直接放在输入控件上:
$(".inputClass").keyup(function(){
this.value = this.value.toUpperCase();
});
其中一个想法可以在文本框上放一个css类。如果它是由您的代码动态生成的
然后在jQuery中使用类选择器。
$('.inputcss').keyup(function(){
this.value = this.value.toUpperCase();
});
或者,你甚至可以使用网格视图的id
,在网格视图中找到输入:文本,然后使用你的函数。以下是的示例代码
$('#<%=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