我有一个包含项目的列表框
<asp:ListBox ID="lbxRoles" runat="server" CssClass="lbxRoles" SelectionMode="Single" ></asp:ListBox>
它包含来自c#...&#39;管理员&#39;经理&#39;&#39;员工&#39;的值。
用户选择角色,然后点击“编辑”。
<asp:LinkButton ID="lbtnEdit" runat="server" Text="Edit" CssClass="lbtnEdit" OnClick="lbtnEdit_Click"
CommandArgument="'<%#( lbxRoles.ClientID ) selectedIndex%>' "></asp:LinkButton>
我在列表框中获取角色的selectedindex时遇到问题,无法进入&#39; lbtnEdit_Click&#39;功能。
答案 0 :(得分:0)
显然,这不可能发生。我最终使用jquery来获取索引,然后将其传递给后面代码中的c#会话变量。这是我的代码。我希望它对某人有帮助。 :)
ASP:
<asp:ListBox ID="lbxRoles" runat="server" CssClass="lbxRoles" SelectionMode="Single"></asp:ListBox>
Jquery:
$(".lbxRoles").click(function (e) {
//disable add button
enableDisableLinkButtons(false, true, true);
//store roleid in session
var selectedRoleId = $(this).find('option:selected').val();
var selectedRoleIndex = $(this).find('option:selected').index();
storeVarInSession(selectedRoleId, selectedRoleIndex);
});
C#:
[System.Web.Services.WebMethod]
public static void storeSessionVars(int? roleId, int? roleIndex)
{
HttpContext.Current.Session["roleid"] = roleId;
HttpContext.Current.Session["roleindex"] = roleIndex;
}