2010-10-09 59 views
0

我必须通过它的id与jQuery找到一个元素。该元素具有ID:如何通过jQuery的最后一位查找元素?

txtHistoricalPricesDate 

这将是很容易在正常情况下找到以下内容:

var element = $('#txtHistoricalPricesDate'); 

但不幸的是,我在一个ASP.NET应用程序,它有益更名为我工作该元素:

ctl00_ContentPlaceHolder1_ucFundSearchResultsPanel_tabContainer_tabPriceTab_txtHistoricalPricesDate 

,而不是肮脏与巨大的荒谬ID jQuery的,是有办法,我可以告诉jQuery来找到与txtHistoricalPricesDate结尾的ID的元素?

回答

2

无论是使用一类或attribute-ends-with selector,像这样:

var element = $('[id$=txtHistoricalPricesDate]'); 

如果必须使用上述(但尝试和使用类),然后用元素类型前缀它,例如:

var element = $('input[id$=txtHistoricalPricesDate]'); 

要使用一个类,只需将其CssClass属性,例如CssClass="histPrices",然后用一个.class selector,像这样:

var element = $('.histPrices'); 

在任何一个正常的元素使用class="",但因为它是一个ASP.Net控制它看起来像,用CssClass,因为这是可能你正在处理的Web控件属性。

1

我会建议你使用类选择器来避免ASP.NET id变形。只需将CssClass附加到您的元素,然后:$('.txtHistoricalPricesDate')或者如果您使用的是ASP.NET 4.0,则可以将ClientIDMode调整为Predictable