0

下面的代码有效,但我不确定如何?

OnClientClick='<%# CreateConfirmation(Eval("EventName"),DataBinder.Eval(Container.DataItem, "EventDate", "{0:ddd, d MMM}")) %>'

Public Function CreateConfirmation(ByVal EventName As String, ByVal EventDate As String) As String Return String.Format("return confirm('Are you sure you want to register for {0} on {1} ?');", EventName, EventDate ) 结束函数

我已经读过 <%# %> 是一个数据绑定表达式,但是在这里我们不是直接数据绑定(实际上是从函数 CreateConfirmation 中返回值),我还认为它应该与 <%= %> 一起使用,但它提供了 JavaScript错误消息,即非法 XML 字符指向 =

请你澄清一下这是为什么?

非常感谢。

4

3 回答 3

1

这个问题在现有帖子中得到了非常准确的回答:

为什么将 <%= %> 表达式作为服务器控件上的属性值会导致编译错误?

于 2009-03-13T04:47:29.943 回答
0

您可以调用 <%#. Eval 位是使它与数据源中的行/对象相关的部分。

于 2009-03-13T04:46:57.997 回答
0

您仍在将返回的字符串绑定到属性。您只能将 <%=%> 与内联 HTML 一起使用。绑定到 contols 属性时必须使用 <%#%>。

于 2009-03-13T04:51:06.283 回答