以下给出了"服务器标签格式不正确"的错误
<asp:LinkButton ID="DeleteButton" runat="server" CommandName="Delete"
OnClientClick="return confirm('Are you sure you want to delete <%# Eval("Username") %>?');">
Delete
</asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)
(这在用于显示用户列表的数据绑定ListView中使用.当您单击删除按钮时,将使用JavaScript确认对话框询问您是否确定)
那么,如何在包含JavaScript的字符串中嵌入服务器标签?
Bla*_*ael 18
问题是绑定块和单引号和双引号的使用.
<asp:LinkButton D="DeleteButton" runat="server" CommandName="Delete" OnClientClick='<%# CreateConfirmation(Eval("Username")) %>'>Delete</asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)
然后在代码隐藏上添加函数...
Public Function CreateConfirmation(ByVal Username As String) As String
Return String.Format("return confirm('Are you sure you want to delete {0}?');", Username)
End Function
Run Code Online (Sandbox Code Playgroud)
当绑定块用作属性的值时,您将注意到必须使用单引号.您的脚本还需要针对confirm函数的嵌入字符串参数的引号.你基本上用完了报价.
小智 7
我在www.asp.net上找到了这个答案
OnClientClick='<%# Eval("ProductName", "return confirm(""Delete the Product {0}?"")" ) %>'
Run Code Online (Sandbox Code Playgroud)
这将所有内容都放在标记中,以便后来进行维护的任何人都不会去寻找所有的部分.
归档时间: |
|
查看次数: |
16420 次 |
最近记录: |