2

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

虽然这

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

呈现为我的 id 是: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 属性在第二种情况下不会被评估。我该如何克服这个问题?(除了硬编码,这不是答案,我想让用户控制独立)

4

2 回答 2

3

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

btnSave.OnClientClick = "return confirmSave('" + this.ClientID + "')";
于 2009-03-23T22:57:26.273 回答
2

试试这个

<asp:Button ID="btnSave" runat="server" Text="Save Template" onclick="btnSave_Click" OnClientClick="return confirmSave(this.id);" /> 
于 2009-03-23T22:52:00.420 回答