【问题标题】:Asp.net Gridview with javascript function build as string带有 javascript 函数的 Asp.net Gridview 构建为字符串
【发布时间】:2017-06-15 18:34:30
【问题描述】:

我在 gridview 中有这段代码

<%# If(Eval("t") = 1, "<button onclick=" + String.Format("popupGO('{0}','{1}')", Eval("name").ToString(), Eval("id").ToString()) + ">" + "AAAAAAAAAAAAAAAAAAAA</button>", "")%> 如果从参数中有一个字符串为 Eval("name").ToString(),则它不起作用。

只有数字才有效!!

有什么建议吗?

更新。 带 GV 的完整代码

<asp:GridView Width="100%" gvrunat="server"  AutoGenerateColumns="false" CellPadding="5" CellSpacing="5" BackColor="Transparent" ShowHeader="false"                         RowStyle-CssClass="test" GridLines="None">
<Columns>
 <asp:TemplateField>
<ItemTemplate>
<%# If(Eval("tablecounter") > 1,
"<span class='badge badge-info'>" + Eval("id").ToString() + " </span>", "")%>
 </ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Name" />                                                    
<asp:TemplateField ItemStyle-HorizontalAlign="right">
<ItemTemplate>    <%# If(Eval("t") = 1,
"<button onclick=" + String.Format("popupGO('{0}','{1}')", Eval("name").ToString(), Eval("id").ToString()) + ">" +
"AAAAAAAAAAAAAAAAAAAA</button>", "")%>
</ItemTemplate></asp:TemplateField></Columns></asp:GridView>

【问题讨论】:

  • 我无法理解 GridView 与此有什么关系。因为它不在问题范围内。其次,按照标准,用双引号将属性值括起来。
  • 使用 Asp:Button 并在 RowDataBound 中绑定 onClientClick 怎么样?
  • 我可以使用 asp:button 并在 rowdatabound 内进行管理,但我想解决这个问题,因为使用 numeber 参数它可以完美运行!
  • Eval("Name").ToString() 使用大写吗?
  • 但在这种情况下它也不起作用 " + "AAAAAAAAAAAAAAAAAAAA", "")%>

标签: javascript asp.net gridview


【解决方案1】:

这行得通

 <%# If(Eval("tipo") = 1, "<button onclick=" + """" + "popuptransfer('" + Eval("Nome").ToString() + "','" + Eval("IdComanda").ToString() + "') " + """" + ">" + "AAAAAAAAAAAAAAAAAAAA</button>", "")%>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-02
    • 2021-02-10
    • 2016-08-16
    • 1970-01-01
    • 2018-12-03
    • 1970-01-01
    • 1970-01-01
    • 2022-01-12
    相关资源
    最近更新 更多