我试图将onchange事件绑定到文本区域,但这不起作用
$('#Que_dlist_ctl0' + sectionid + '_Inner_dlist tr:nth-child(' + (i + 1) + ')
#Que_dlist_ctl0' + sectionid + '_Inner_dlist_ctl0' + i + '_txtsuggest')
.addClass("clTxt_" + i)
.bind("change",function(){"Validate(this);"});在呈现的html中,我可以看到按需要添加的'class‘,而不是事件。还尝试了.attr而不是bind。
$('#Que_dlist_ctl0' + sectionid + '_Inner_dlist tr:nth-child(' + (i + 1) + ')
#Que_dlist_ctl0' + sectionid + '_Inner_dlist_ctl0' + i + '_txtsuggest')
.addClass("clTxt_" + i)
.attr("onchange","Validate(this);"});它不工作在火狐,即和铬。
表和控件中的行都是动态生成的,因此也就是奇怪的id选择器。
<textarea class="clTxt_0" name="Que_dlist$ctl00$Inner_dlist$ctl00$txtsuggest"
rows="3" cols="20" id="Que_dlist_ctl00_Inner_dlist_ctl00_txtsuggest"
style="width:300px;"></textarea>发布于 2014-08-21 13:59:41
如果编写$(selector).bind("change",function(){}); or $(selector).change(function(){});,当事件被绑定到textarea时,这只会绑定到DOM中已经存在的那些文本区域。
由于您的行是动态生成的,所以您可以在生成
<textarea class="gridTextArea" class="clTxt_0"
name="Que_dlist$ctl00$Inner_dlist$ctl00$txtsuggest" rows="3" cols="20"
id="Que_dlist_ctl00_Inner_dlist_ctl00_txtsuggest" style="width:300px;" >
</textarea>并将其绑定,如下所示,它将绑定到所有新创建的文本区域,并在动态创建的行中使用。
$(document).on("change",".gridTextArea",function(){
//your logic goes here
});希望这会有所帮助:)
发布于 2014-08-21 13:21:05
使用:
.change(function(){
Validate(this);
});https://stackoverflow.com/questions/25427417
复制相似问题