でコントロールを作成しません、あなたはおそらくラベルに選択のために使用することができるCSSクラスを与える必要があります。
<asp:Label Id="_lblError" Text="This is the error message"
CssClass="ThisIsWhatWeWillllWorkWith" />
これますおそらく出力
<span id="ct100__lblError" class="ThisIsWhatWeWillWorkWith">
This is the error message.
</span>
のようなものになりましたセレクタとしてクラスを使用してjQueryの中でラベルを選択し、.text()
プロパティが空であるかどうかに応じて、クラスAまたはBを追加することができます。
$(function() {
$('.ThisIsWhatWeWillWorkWith').each(function() {
if($(this).text() == '') { $(this).addClass('ClassA'); }
else { $(this).addClass('ClassB'); }
});
});
すべてのコードを変更せずに作業の無保証で、あるとして提供されます。しかし、あなたは問題を解決する方法の一般的な考えを得ます...
EDIT:あなたのコメントに応じて、ここにラベルにCSSクラスを追加せずにそれを行う方法です。代わりに、エラーメッセージの<asp:Label>
タグを使用して、あなたがあなたのページにハードコードタグでリテラルをラップ:
<span class="ThisIsWhatWeWillWorkWith"><asp:Literal ID="__ltlError" Text="This is the error message.</asp:Literal></span>
別の、おそらくよりエレガントな方法、独自のカスタムラベルを作成することです、と使用代わりに。
public class ErrorLabel : System.Web.UI.WebControls.Label
{
public ErrorLabel() {
this.CssClass = "ThisIsWhatWeWillWorkWith";
}
}
あなたは、次の行をあなたのページにエラーメッセージを置く:
<asp:ErrorLabel ID="__lblError" Text="This is the error message" />
再び
、ない上記のコードがあるように動作するかどうか確認してください。しかし、もう一度、あなたは何をすべきかのアイデアを得ます...
このタグのHTML出力はどのようなものですか? –
スパン。 ctl00__mainArea__lblErrorのような接頭辞が付いたID – Larsi