通过ASP.NET ListView传递JavaScript参数

时间:2011-12-29 01:38:43

标签: javascript asp.net

我正在尝试通过ListView中的链接按钮将参数传递给JavaScript函数,该函数仅警告传递的参数,因此我使用Eval(“Value”)作为我的参数,但似乎我正在制作一个错误。

我传递参数的代码是

<asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="hello(<%#string.Concat(Eval("Longitude"),",",Eval("Latitude")) %>);">LinkButton</asp:LinkButton>

并且警报功能非常简单

 function hello(x){
    alert(x);
}

并且服务器标记仍然没有很好地形成。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

当属性包含服务器代码时,您应该使用单引号'而不是双引号"

<asp:Label ID="label1" runat="server" OnClientClick='<%#Eval("Foo")%>' />

答案 1 :(得分:0)

您的代码应该可以工作,但是,看起来绑定机制很混乱。我之前一直在努力解决这个问题,并提出了以下解决方法。

  1. 在页面后面的代码中添加方法。

    受保护的字符串CreateJavascriptCall(对象经度,对象纬度) {     return String.Format(“hello({0},{1}); return false;”,经度,纬度); }

  2. 将您的aspx页面代码更改为:

    asp:LinkBut​​ton ID =“LinkBut​​ton1”runat =“server”OnClientClick ='&lt;%#CreateJavascriptCall(Eval(“Longitude”),Eval(“Latitude”))%&gt;'&gt; LinkBut​​ton