asp.net制作一个listView行可点击而没有按钮

时间:2015-04-14 19:22:47

标签: c# asp.net vb.net listview

我想在不使用按钮的情况下使listview行可单击。 列表视图中填充了数据库中的数据,因此直接将onclick方法放在tr上是一个选项。

我发现了这个问题:http://forums.asp.net/t/1419161.aspx

但是我得到错误:“registerforeventvalidation只能在render()期间在行上调用:

     string script = this.ClientScript.GetPostBackClientHyperlink(btn, "", true);

通过在@Page指令中设置“enableEventValidation =”false“”可以解决这个问题。

现在我的问题:

  • 我做错了吗?
  • 关闭eventValidation是不是很糟糕?
  • 有更好的方法吗?如果是这样的话?

我更喜欢listview,但是如果有一种更好的方式涉及其他网格,比如控制,我也想听听。

我在asp.net VB.net中制作这个,但c#示例也没问题。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以从数据库执行此操作。在下面的示例中,单击该行将调用名为evalItem的javascript函数,并从绑定到列表视图的行的数据项中传递“Publisher”字段。

 <ItemTemplate>
    <tr class="clsGroupRowSelectable" onclick='evalItem(&#39;<%# Eval("Publisher").ToString() %>&#39;);'>
       <td><%# Eval("Number") %>' /></td>
    </tr>
 </ItemTemplate>