未选定角色
<asp:ListBox ID="lstUnselectedItems" SelectionMode="Multiple" runat="server" Width="280px" Height="220px" DataTextField="rolename" DataValueField="roleid"></asp:ListBox> </td> <td align=center> <br /><br /><br /><br /><br /><br /> <input type=button value=" < " οnclick="Transfer(document.getElementById('<%=lstSelectedItems.ClientID %>'),document.getElementById('<%=lstUnselectedItems.ClientID %>'),false,'leftItems','rightItems')" /> <input type=button value=" > " οnclick="Transfer(document.getElementById('<%=lstUnselectedItems.ClientID %>'),document.getElementById('<%=lstSelectedItems.ClientID %>'),true,'leftItems','rightItems')" /> </td> <td class="dataCol"> 已选定角色<br /><br /> <asp:ListBox ID="lstSelectedItems" SelectionMode="Multiple" runat="server" Width="280px" Height="220px" TabIndex="28" DataTextField="rolename" DataValueField="roleid"></asp:ListBox> <input type="hidden" name="rightItems" value="" id="rightItems" /> <input type="hidden" name="leftItems" value="" id="leftItems" />
后台代码:
1 : 首先进行ListBox数据绑定
2 : private void SaveUserRole(int userId) { string AssignedItems = Request.Form["rightItems"];
UserLogic.GetInstance().SaveUserRole(userId, AssignedItems); }
3 : 保存权限方法
public void SaveUserRole(int userId, string roleIdList) {
string sqlCommand1 = "DELETE FROM [role2user] WHERE userId=" + userId; DbCommand dbCommand1 = db.GetSqlStringCommand(sqlCommand1); db.ExecuteNonQuery(dbCommand1);
string[] Items = roleIdList.Split(','); for (int i = 0; i < Items.Length - 1; i++) { int roleId = Utility.SafeInt(Items[i]); //将Object转换为INT类型 string sqlCommand2 = "Insert into role2user(userId,roleId) Values('" + userId.ToString() + "','" + roleId.ToString() + "')"; DbCommand dbCommand2 = db.GetSqlStringCommand(sqlCommand2); db.ExecuteNonQuery(dbCommand2); } }