首页 > 解决方案 > ASP.net 使用 Eval 将逗号分隔的字符串作为参数传递

问题描述

我的 aspx 中有一个 Eval 函数,如下所示。

<asp:LinkButton ID="LinkButton1" runat="server" 
    OnClientClick='<%# "javascript:MyJSFunction(" + Eval("ObjectIdList") + ");return false;" %>'>
</asp:LinkButton>

ObjectIdList 是来自服务器端的列表逗号分隔的 ID,如下所示

234,333,444,555

我的javascript如下

function MyJSFunction(Ids){
    alert(Ids)
}

我的 javascript 函数仅显示 234 的第一个 id。我尝试将单引号如下所示,但出现错误“服务器标记格式不正确”

<asp:LinkButton ID="LinkButton2" runat="server" 
    OnClientClick='<%# "javascript:MyJSFunction('" + Eval("ObjectIdList") + "');return false;" %>'>
</asp:LinkButton>

请帮忙

标签: javascriptasp.net

解决方案


转义字符串中的单个javascript引号&#39;

<asp:LinkButton ID="LinkButton1" runat="server"
    OnClientClick='<%# "javascript:MyJSFunction(&#39;" + Eval("ObjectIdList") + "&#39;);return false;" %>'>
</asp:LinkButton>

推荐阅读