ASCX文件中的ClientID

时间:2009-03-23 22:48:22

标签: javascript user-controls ascx

我正在尝试在.ascx(用户控制标记)文件中获取CLientID。

虽然这个

My id is: <%=this.ClientID%>

呈现为 我的身份是:fracTemplateCtrl

此:

        <asp:Button ID="btnSave" runat="server" Text="Save Template" onclick="btnSave_Click" OnClientClick="return confirmSave('<%=this.ClientID%>');" />

呈现为(源代码内部):

        <input type="submit" name="fracTemplateCtrl$btnSave" value="Save Template" onclick="return confirmSave('&lt;%=this.ClientID%>');" id="fracTemplateCtrl_btnSave" />

显然,在第二种情况下不会评估ClientId属性。我该如何克服这个问题? (除了硬编码,这不是答案,我想让用户控制独立)

2 个答案:

答案 0 :(得分:3)

您可以像这样设置OnClientClick属性的服务器端值:

btnSave.OnClientClick = "return confirmSave('" + this.ClientID + "')";

答案 1 :(得分:2)

试试这个

<asp:Button ID="btnSave" runat="server" Text="Save Template" onclick="btnSave_Click" OnClientClick="return confirmSave(this.id);" />