在asp.net Onclick字符串中转义双引号

时间:2010-07-10 21:35:13

标签: asp.net data-binding onclick eval

我正在尝试将动态数据插入到onclick属性中,以便控件代码看起来像这样

onclick="openRadWindow('<%#Eval("ID";) %>','<%#Eval("ParentObjectID") %>');"

我无法解决问题并且问题似乎是双引号,什么是逃避引号的正确方法,以便激活。

4 个答案:

答案 0 :(得分:2)

您可以使用格式字符串,如下所示:

onclick='<%# string.Format("openRadWindow(\"{0}, {1}\");", Eval("ID"), Eval("ParentObjectID")) %>' 

答案 1 :(得分:1)

事件是否未触发,或者您是否收到任何javascript错误。此外,我会在页面呈现后查看HTML,并确保正确处理服务器标记。某些用途会导致它们不被实际处理,并且将保持&lt;%#Eval(“ID”)%&gt ;.

答案 2 :(得分:1)

感谢所有我能够使用不同的方法使其正常工作。在后面的代码我创建了一个函数,并在函数中我放了以下代码

Return String.Format("openRadWindow({0},{1});", photo.ID, photo.ParentObjectID)

在aspx中我添加了onclick="<%#MyFunction(DirectCast(Container.DataItem,Photo))%>

答案 3 :(得分:0)

我首先看到的是“ID”之后的分号 - 我认为这可能会导致你的问题。