1

.masterサーバー側を使用するページにスパンがありますrunat="server".。c#コードがこのスパンのinnerHtmlに追加されます。スパンはid="tickerfade"; ただし、ページにレンダリングされると、IDはに変更されid=ctl00_tickerfadeます。なぜこれが発生し、どうすれば停止できますか?

4

2 に答える 2

4

コントロールをに設定できClientIdModeますStatic

ClientID値は、IDプロパティの値に設定されます。コントロールがネーミングコンテナの場合、コントロールは、コントロールに含まれるすべてのコントロールのネーミングコンテナの階層の最上位として使用されます。

ASP.NET Webサーバーコントロールの識別の詳細については、次のリンクを参照してください。

http://msdn.microsoft.com/en-us/library/1d04y8ss.aspx

本当の問題がクライアント側で正しいIDを見つける方法である場合は、ClientIdプロパティを使用できます。

于 2012-08-20T19:48:26.017 に答える
1

これControlは、どちらが側でレンダリングされるかによってserverクライアント側IDが自動生成されたために発生しました。

asp.netをすぐに使用できるコントロール(<asp:Label />など)を使用する場合は、次のように設定できますClientIdModeStatic

このスパンをJavaScriptで使用したい場合は、次のように記述できます。

$('<%= tickerfade.ClientID %>).click(....)

于 2012-08-21T07:10:07.913 に答える