请教 OnClientClick 中使用 <%%>的问题

metalzhang 2013-05-29 11:00:01
请教一个问题:
<asp:Button ID="btn1" runat="server" Text="自定义" OnClientClick="alert('<% =Id %>');return false;" />
其中Id的值是123

在页面上点击这个按钮显示了字符串“ <% =Id %> ”,不是 我想要的显示 Id 的值 123;

这是为什么,我要如何做,才能显示 123。
...全文
200 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
在后台的 page_load中加入代码 Page.DataBind(); 然后 前段的绑定<asp:Button ID="Button2" runat="server" Text="<%# id %>" OnClientClick="alert(this.title);return false;" ToolTip="<%# id %>" /> 因为OnClientClick在绑定的时候 还是不会转换过来 所以这里用的是 绑定title 的值 弹出title的值 title就是ToolTip
IssacChow 2013-05-29
  • 打赏
  • 举报
回复
引用 3 楼 metalzhang 的回复:
去掉引号也不行,我试过了。 我已经找到解决方法了。 在OnClientClick 就没法用 <%%> 。 在后台代码中这样来赋值。 btn1.OnClientClick = "alert(" + id + ");return false;" 这样在页面看源代码就是: onclick="alert(123);return false;"
page_load中赋值,或者在之前赋值 ,都是可以alert出来的
IssacChow 2013-05-29
  • 打赏
  • 举报
回复
主要看你id在什么时候赋值的
metalzhang 2013-05-29
  • 打赏
  • 举报
回复
去掉引号也不行,我试过了。 我已经找到解决方法了。 在OnClientClick 就没法用 <%%> 。 在后台代码中这样来赋值。 btn1.OnClientClick = "alert(" + id + ");return false;" 这样在页面看源代码就是: onclick="alert(123);return false;"
Ryan1221 2013-05-29
  • 打赏
  • 举报
回复
同意楼上
Kim_Du 2013-05-29
  • 打赏
  • 举报
回复
把括号里面的单引号去掉
kiss筱魔 2013-05-29
  • 打赏
  • 举报
回复
var id="<%=id%>"; alert(id);
Ryan1221 2013-05-29
  • 打赏
  • 举报
回复
引用 3 楼 metalzhang 的回复:
去掉引号也不行,我试过了。 我已经找到解决方法了。 在OnClientClick 就没法用 <%%> 。 在后台代码中这样来赋值。 btn1.OnClientClick = "alert(" + id + ");return false;" 这样在页面看源代码就是: onclick="alert(123);return false;"
如果在后台赋值,这当然可以实现。但还是没有解决数据绑定的问题,我提供一种解决方法, OnClientClick=‘<%# javascript:alert(\""+id+"\");return false;" %>' 并且在后台代码的page_loading中加入page.databind().这样绑定以后就可以使用了
【Help】 2013-05-29
  • 打赏
  • 举报
回复
单引号去掉就可以了

62,244

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧