javascript单击以使用asp.net ListView控件选择项目
我正在尝试实现onclick事件来选择asp:ListViewControl中的项目javascript单击以使用asp.net ListView控件选择项目,javascript,asp.net,listview,onclick,Javascript,Asp.net,Listview,Onclick,我正在尝试实现onclick事件来选择asp:ListViewControl中的项目 <ItemTemplate> <tr runat="server" id="MemberRow" onclick='<%#ClientScript.GetPostBackClientHyperlink(LvMembers, string.Format("Select${0}", Container.DataItemIndex)) %>'>
<ItemTemplate>
<tr runat="server" id="MemberRow" onclick='<%#ClientScript.GetPostBackClientHyperlink(LvMembers, string.Format("Select${0}", Container.DataItemIndex)) %>'>
<td>
<asp:Literal runat="server" ID="LtlMembershipNumber" Text='<%#Eval("MembershipNo") %>' />
</td>
<td>
<asp:Literal runat="server" ID="LtlName" Text='<%#Eval("FullName") %>' />
</td>
<td>
<asp:Literal runat="server" ID="LtlCompany" Text='<%#Eval("Company") %>' />
</td>
<td>
<asp:Literal runat="server" ID="LtlNotes" Text='<%#Eval("Notes") %>' />
</td>
<td runat="server">
<asp:Literal runat="server" ID="LtlMobile" Text='<%#Eval("MobilePhone") %>' /><asp:LinkButton
runat="server" ID="lnl1" CommandName="Select" Text="test" />
</td>
</tr>
</ItemTemplate>
但是,onclick不会触发ListView.Command或ListView.SelectedIndexChanged事件?如果我添加一个CommandName=“Select”按钮,它会按预期工作吗?帖子数据是一样的
{{uuuu EVENTTARGET=ctl00%24ContentPlaceHolder1%24LvMembers&\uuu EVENTARGUMENT=Select%245&\uuuu VIEWSTATE=…}这是我自己回答的。ListView类未实现IPostBackEventHandler接口
public class ListViewEvent : ListView, IPostBackEventHandler
{
public void RaisePostBackEvent(string eventArgument)
{
if (!eventArgument.Contains("$"))
return;
string[] splitEventArgument = eventArgument.Split('$');
switch (splitEventArgument[0])
{
case "Select":
{
SelectItem(Convert.ToInt32(splitEventArgument[1]));
break;
}
default:
{
break;
}
}
}
}
这意味着它没有RaisePostBackEvents方法,并且不接受EventTarget
我重载了它来实现这个接口
public class ListViewEvent : ListView, IPostBackEventHandler
{
public void RaisePostBackEvent(string eventArgument)
{
if (!eventArgument.Contains("$"))
return;
string[] splitEventArgument = eventArgument.Split('$');
switch (splitEventArgument[0])
{
case "Select":
{
SelectItem(Convert.ToInt32(splitEventArgument[1]));
break;
}
default:
{
break;
}
}
}
}
这正是我想要的。我如何实现这一点?