MVC HtmlHelper listbox用法

List<userinfo> lstUserInfo = new List<userinfo>();
List<userinfo> lstColLessonUsers = new List<userinfo>();
lstColLessonUsers = _CollaborativeLessonUsersBLL.GetListByUserId(userIds, true, new[] { UserInfo_OrderByItem.FullName_ASC });
MultiSelectList lstMuLessonUser = new MultiSelectList(lstColLessonUsers, "userid", "FullName");
ViewBag.MuLessonUser = lstMuLessonUser;
lstNotExistUserInfo = _CollaborativeLessonUsersBLL.GetListByUserId(userIds, false, new[] { UserInfo_OrderByItem.FullName_ASC });
MultiSelectList lstMuNotExistUserInfo = new MultiSelectList(lstNotExistUserInfo, "userid", "FullName");
ViewBag.MuNotExistUserInfo = lstMuNotExistUserInfo;
view:
<div>
<p>主持人:@ViewBag.UserName</p>
<p><input id="txtUserName" type="text" /><input id="btnSearch" type="button" value="搜索" /></p>
</div>
<div style="width:auto;">
@Html.ListBox("NoExistUser", ViewBag.MuNotExistUserInfo as MultiSelectList, new { style = "width:100px;height:300px;", ondblclick = "move('NoExistUser','lessonUser')" })
<input id="btnMoveRight" type="button" value=">" class="btn" title="移动选择项到右侧" />
<input id="btnMoveLeft" type="button" value="<" class="btn" title="移动选择项到左侧" />
@Html.ListBox("lessonUser", ViewBag.MuLessonUser as MultiSelectList, new { style = "width:100px;height:300px;", ondblclick = "move('lessonUser','NoExistUser')" })
</div>
<div>
<input id="btnSave" type="button" value="确定" class="btn-01" style="border: 0; cursor: pointer" />
</div>
JQ:
$(document).ready(function () {
//左右移动
$("#btnMoveRight").on("click", function () { move("NoExistUser", "lessonUser") });
$("#btnMoveLeft").on("click", function () { move("lessonUser", "NoExistUser") });
//保存
$("#btnSave").on("click", function () {
$("#lessonUser option").attr("selected", true);
var lessonUser = $("#lessonUser").val();
alert(lessonUser);
$("#hnUserIds", window.parent.document).val(lessonUser);
})
$("#btnSearch").on("click", function () {
var userName = $.trim($("#txtUserName").val());
//已选用户
$("#lessonUser option").attr("selected", true);
var arrLessonUser = $("#lessonUser").val();
//
$.ajax({
type: "post",
data: { lessonId: "@ViewBag.LessonId", userName: userName },
url:"@Url.Action("GetUserName","CollaborativeLesson")",
success: function (data) {
$("#NoExistUser").empty();
var optionhtml = "";
if (data!=null && data.length>) {
$.each(data, function (i, item) {
if ($.inArray(item.UserId, arrLessonUser) < ) {
optionhtml += ("<option value=\"" + item.UserId + "\">" + item.FullName + "</option>");
}
})
$("#NoExistUser").append(optionhtml);
}
}
})
})
})
//移动
function move(lstFrom, lstTo) {
var selUser = $("#" + lstFrom).val();
if (null != selUser && selUser != "") {
var selOption = $("#" + lstFrom).find("option:selected");
$("#" + lstFrom).find("option:selected").remove();
$("#" + lstTo).append(selOption);
}
else {
alert("请选择用户!");
return false;
}
}
类似的:http://www.cnblogs.com/liguanghui/archive/2011/11/02/2232858.html
HtmlHelper用来在视图中呈现 HTML 控件。http://www.cnblogs.com/jyan/archive/2012/07/23/2604474.html
1.ListBox
@Html.ListBox("lstBox1",(SelectList)ViewData["Categories"])
@Html.ListBoxFor(a => a.CategoryName, (SelectList)ViewData["Categories"])
生成结果:
<select id="lstBox1" multiple="multiple" name="lstBox1">
<option value="">Beverages</option>
<option value="">Condiments</option>
<option selected="selected" value="">Confections</option>
<option value="">Dairy Products</option>
<option value="">Grains/Cereals</option>
<option value="">Meat/Poultry</option>
<option value="">Produce</option>
<option value="">Seafood</option>
</select>
<select id="CategoryName" multiple="multiple" name="CategoryName">
<option value="">Beverages</option>
<option value="">Condiments</option>
<option value="">Confections</option>
<option value="">Dairy Products</option>
<option value="">Grains/Cereals</option>
<option value="">Meat/Poultry</option>
<option value="">Produce</option>
<option value="">Seafood</option>
</select>
2.DropDownList
@ Html.DropDownList("ddl1", (SelectList)ViewData["Categories"], "--Select One--")
@Html.DropDownListFor(a => a.CategoryName, (SelectList)ViewData["Categories"], "--Select One--", new { @class = "dropdownlist" })
生成结果:
<select id="ddl1" name="ddl1">
<option value="">--Select One--</option>
<option value="">Beverages</option>
<option value="">Condiments</option>
<option selected="selected" value="">Confections</option>
<option value="">Dairy Products</option>
<option value="">Grains/Cereals</option>
<option value="">Meat/Poultry</option>
<option value="">Produce</option>
<option value="">Seafood</option>
</select>
<select class="dropdownlist" id="CategoryName" name="CategoryName">
<option value="">--Select One--</option>
<option value="">Beverages</option>
<option value="">Condiments</option>
<option value="">Confections</option>
<option value="">Dairy Products</option>
<option value="">Grains/Cereals</option>
<option value="">Meat/Poultry</option>
<option value="">Produce</option>
<option value="">Seafood</option>
</select>
DropDownList
表现形式一
public ActionResult Main()
{
List<SelectListItem> items = new List<SelectListItem>();
items.Add(new SelectListItem { Text = "Action", Value = "" });
items.Add(new SelectListItem { Text = "Comedy", Value = "" });
ViewBag.MovieType = items;
return View();
}
表现形式二:
public enum Unit
{
吨,
堆,
捆
}
var values = Enum.GetValues(typeof(Unit)).Cast<Unit>();
var items = from value in values
select new SelectListItem { Text = value.ToString(), Value = value.ToString()., Selected = value == Unit.堆 };
表现形式三(编辑、更新有默认值):
//下拉菜单
List<SelectListItem> list = new List<SelectListItem>()
{
new SelectListItem(){Value="Man",Text="Man"},
new SelectListItem(){Value="Female",Text="Female"}
};
ViewBag.Gender = new SelectList(list, "Value", "Text",entity.Gender);
使用方法扩展:
/// <summary>
/// 在MVC开发中我们常常用到枚举类型,通常枚举类型在使用中是是用DropDownList,每次转换不是什么好办法。 通过扩展加以实现此功能。
/// </summary>
public static class ExSelectListItem
{
public static IEnumerable<SelectListItem> ToSelectListItem(this Enum valueEnum)
{
var values = Enum.GetValues(valueEnum.GetType());
var result= from int value in values select new SelectListItem { Text =Enum.GetName(valueEnum.GetType(),value), Value = value.ToString() };
return result;
}
public static List<SelectListItem> ToSelectListItem(this Enum valueEnum, string selectName)
{
return (from int value in Enum.GetValues(valueEnum.GetType())
select new SelectListItem
{
Text = Enum.GetName(valueEnum.GetType(), value),
Value = Enum.GetName(valueEnum.GetType(), value),
Selected = Enum.GetName(valueEnum.GetType(), value) == selectName ? true : false
}).ToList();
}
}
var items = Unit.堆.ToSelectListItem("捆");
ViewBag.Unit = items;
MVC HtmlHelper listbox用法的更多相关文章
- ASP.NET MVC HtmlHelper用法集锦
ASP.NET MVC HtmlHelper用法集锦 在写一个编辑数据的页面时,我们通常会写如下代码 1:<inputtype="text"value='<%=View ...
- MVC HtmlHelper用法大全
MVC HtmlHelper用法大全HtmlHelper用来在视图中呈现 HTML 控件.以下列表显示了当前可用的一些 HTML 帮助器. 本主题演示所列出的带有星号 (*) 的帮助器. ·Actio ...
- 扩展ASP.NET MVC HtmlHelper类
在这篇帖子中我会使用一个示例演示扩展ASP.NET MVC HtmlHelper类,让它们可以在你的MVC视图中工作.这个示例中我会提供一个简单的方案生成Html表格. HtmlHelper类 Htm ...
- ASP .NET MVC HtmlHelper扩展——简化“列表控件”的绑定
在众多表单元素中,有一类<select>元素用于绑定一组预定义列表.传统的ASP.NET Web Form中,它对应着一组重要的控件类型,即ListControl,我们经常用到DropDo ...
- MVC 中DropDownList 用法
MVC 中DropDownList 用法 后台 Dictionary<string, int> dc = new Dictionary<string, int>(); dc. ...
- Spring MVC RedirectAttributes的用法解决办法
Spring MVC RedirectAttributes的用法很久没发过技术贴了,今天对于一个问题纠结了2小时,遂放弃研究用另一种方法解决,奈何心中一直存在纠结,发帖求解 我先解释下什么是Redir ...
- MVC HtmlHelper扩展——实现分页功能
MVC HtmlHelper扩展类(PagingHelper) using System; using System.Collections.Generic; using System.Collect ...
- C# ASP.NET MVC HtmlHelper用法大全
UrlHrlper 下面的两个地址一样的功能 下边这个防止路由规则改变 比如UserInfo/Index改为UserInfo-Index,使用下面的不受影响 另一种形式的超链接: <%: Htm ...
- ASP.NET MVC HtmlHelper用法大全
HTML扩展类的所有方法都有2个参数: 以textbox为例子public static string TextBox( this HtmlHelper htmlHelper, string name ...
随机推荐
- day02.2-常用Linux命令整理
Linux命令语法格式: 命令 [选项] [参数] 1). 命令:告诉Linux操作系统执行什么: 2). 选项:说明命令的运行方式.选项部分是以字符‘-’开始的: 3). 参数:说明 ...
- Educational Codeforces Round 61 (Rated for Div. 2)F(区间DP,思维,枚举)
#include<bits/stdc++.h>typedef long long ll;const int inf=0x3f3f3f3f;using namespace std;char ...
- Vue Study [2]: Vue Router
Description The article for vue router. Original post link:https://www.cnblogs.com/markjiang7m2/p/10 ...
- charset=iso-8859-1
今天群里有人在问, 求解:charset="ISO-8859-1"是什么意思 其实我也不大懂,然后就去翻阅了下资料.科普开始: 网页制作中遇到的编码,乱码问题之一:charset= ...
- Python利用百度地图api批量获取地址经纬度
1.pip安装xlrd,xlwt,requests模块. 2.在工程目录处放置地点Excel文件. python2.7.13代码: #coding:utf-8 import xlrd import x ...
- [ZJOI2018]历史(LCT)
这篇还发了洛谷题解 [Luogu4338] [BZOJ5212] 题解 题意 给出一棵树,给定每一个点的 \(access\) 次数,计算轻重链切换次数的最大值,带修改. 先考虑不带修改怎么做 假设 ...
- jupyter notebook初步使用
Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言.在本文中,我们将介绍 Jupyter notebook 的主要特性,以 ...
- 用sphinx-doc优雅的写文档
Sphinx 是一个工具,它使得创建一个智能而美丽的文档变得简单.作者Georg Brandl,基于BSD许可证. 起初为写 Python 文档而诞生的 Sphinx,支持为各种语言生成软件开发文档. ...
- 2013 New available ICOM A2 Diagnostic & Programming For BMW ICOM A2+B+C
AUTONUMEN.COM offer best price New ICOM A2 Diagnostic & Programming For BMW ICOM A2+B+C. bmw ico ...
- Connection closing...Socket close. Connection closed by foreign host. Disconnected from remote host(centos6.9) at 14:59:05.
查找网上资料解决方法如下 [root@localhost ssh]# service sshd start Starting sshd: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...