2010-07-10 86 views
3

我试图动态数据插入到的onclick属性控件的代码看起来像这样逃生在asp.net的onclick字符串双引号

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

我不能让它火和麻烦似乎是双引号,什么是正确的方法逃避报价,这样就会引发火灾。

回答

0

我看到的第一件事就是在“ID”之后出现分号 - 我认为这可能会导致您的问题。

+0

谢谢,我不是这个意思有,有,但我不它在代码 – 2010-07-10 21:50:51

1

事件是否没有触发或你是否也收到任何javascript错误。另外,在页面渲染完成后,我会查看HTML,并确保正确处理服务器标记。有某些用途导致它们不被实际处理,并且将保持<%#Eval(“ID”)%>。

2

你可以使用格式字符串,像这样:

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

我得到错误逗号,')',或预期有效的表达式延续。 更改onclick ='<%#为<%=并且它加载,但它没有获得数据绑定值 感谢 – 2010-07-10 22:40:57

+0

@Adonis - 这是一段时间,因为我做了这样的内联,如果你替换'\“ ''用'\\'',相同的结果? – 2010-07-10 22:45:40

+0

@Adonis - 您是否检查了呈现的HTML以确保数据绑定表达式正常工作? – mclark1129 2010-07-10 23:14:55

1

感谢所有我能得到它使用不同的方法正常工作。在后面的代码我创建了一个功能,在功能,我把下面的代码

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

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