如何在Mvc中实现自动完成文本框以搜索数据库中存在的数据/ [英] How Can I Implement A Autocomplete Text Box In Mvc For Searching A Data Which Is Present In Database/
问题描述
索引查看页面页面
@model IEnumerable
@ {
ViewBag.Title =索引;
}
< link href =〜/ Content / jquery-ui-1.10.3-theme.css rel =stylesheet/>
< script src =〜/ Scripts / jquery-1.9.1.jstype =text / javascript>< / script>
< script src =〜/ Scripts / jquery-ui-1.10.3.custom.min.jstype =text / javascript>< / script>
< script type =text / javascript>
$(function(){
$(#txtSearch ).autocomplete({
来源:@ Url.Action(GetVisitors)
// minLength:2
});
});
< / script>
@using(Html.BeginForm())
{
名字
@ Html.TextBox(SearchTerm ,null,new {id =txtSearch})
< input type =submitvalue =Search/>
}
@ Html.ActionLink(新建,C reate)
@foreach(型号中的var项目){
}
@ Html.DisplayNameFor(model => model.First_name)
@ Html.DisplayNameFor(model => model.Last_name)
@ Html.DisplayNameFor(model => model.Mobile_number)
@ Html.DisplayNameFor(model => model.Expected_visit_date)
@ Html.DisplayFor(modelItem => item.First_name)
@ Html.DisplayFor(modelItem => item.Last_name)
@ Html.DisplayFor(modelItem => item.Mobile_number)
@ Html.DisplayFor(modelItem => item.Expected_visit_date)
@ Html.ActionLink(编辑,编辑,新{id = item.ID})|
@ Html.ActionLink(详细信息,详细信息,新{id = item.ID})|
@ Html.ActionLink( 删除,删除,新{id = item.ID})
访客控制器代码
使用System;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web.Mvc;
使用System.Data.Entity;
使用System.Net;
命名空间VMS_Dummy.Controllers
{
公共类VisitorController:Controller
{
private EBSDev_VMSDummy db = new EBSDev_VMSDummy();
public ActionResult Index()
{
返回视图(db.Visitors.ToList());
}
[HttpPost]
公共ActionResult索引( string SearchTerm)
{
列表访问者;
if(string.IsNullOrEmpty(SearchTerm))
{
visitor = db.Visitors.ToList();
}
else
{
visitor = db.Visitors.Where(v => v.First_name.StartsWith(SearchTerm))。ToList();
}
返回查看(访客);
}
public JsonResult GetVisitors(字符串术语)
{
列表访问者;
visitor = db.Visitors.Where(v => v.First_name.StartsWith(term))。选择(x => x.First_name).ToList();
返回Json(访客,JsonRequestBehavior.AllowGet);
}
}
}
CODE OF INDEX VIEW PAGE
@model IEnumerable
@{
ViewBag.Title = "Index";
}
<link href="~/Content/jquery-ui-1.10.3-theme.css" rel="stylesheet" />
<script src="~/Scripts/jquery-1.9.1.js" type="text/javascript"></script>
<script src="~/Scripts/jquery-ui-1.10.3.custom.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#txtSearch").autocomplete({
source: "@Url.Action("GetVisitors")"
// minLength:2
});
});
</script>
@using(Html.BeginForm())
{
First Name
@Html.TextBox("SearchTerm", null, new { id="txtSearch" })
<input type="submit" value="Search" />
}
@Html.ActionLink("Create New", "Create")
@foreach (var item in Model) {
}
@Html.DisplayNameFor(model => model.First_name)
@Html.DisplayNameFor(model => model.Last_name)
@Html.DisplayNameFor(model => model.Mobile_number)
@Html.DisplayNameFor(model => model.Expected_visit_date)
@Html.DisplayFor(modelItem => item.First_name)
@Html.DisplayFor(modelItem => item.Last_name)
@Html.DisplayFor(modelItem => item.Mobile_number)
@Html.DisplayFor(modelItem => item.Expected_visit_date)
@Html.ActionLink("Edit", "Edit", new { id=item.ID }) |
@Html.ActionLink("Details", "Details", new { id=item.ID }) |
@Html.ActionLink("Delete", "Delete", new { id=item.ID })
CODE OF VisitorController
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Data.Entity;
using System.Net;
namespace VMS_Dummy.Controllers
{
public class VisitorController : Controller
{
private EBSDev_VMSDummy db = new EBSDev_VMSDummy();
public ActionResult Index()
{
return View(db.Visitors.ToList());
}
[HttpPost]
public ActionResult Index(string SearchTerm)
{
List visitors;
if (string.IsNullOrEmpty(SearchTerm))
{
visitors = db.Visitors.ToList();
}
else
{
visitors = db.Visitors.Where(v => v.First_name.StartsWith(SearchTerm)).ToList();
}
return View(visitors);
}
public JsonResult GetVisitors(string term)
{
List visitors;
visitors = db.Visitors.Where(v => v.First_name.StartsWith(term)).Select(x => x.First_name).ToList();
return Json(visitors,JsonRequestBehavior.AllowGet);
}
}
}
推荐答案
(function(){
(function () {
(#txtSearch)。autocomplete({
来源:@ Url.Action(GetVisitors)
// minLength:2
});
});
< / script>
@using(Html.BeginForm( ))
{
名字
@ Html.TextBox(SearchTerm,null,new {id =txtSearch})
< input type =submitvalue =搜索/>
}
@Html .ActionLink(创建新,创建)
$ / b $ b
@foreach(型号中的var项目){
}
$ / $
@ Html.DisplayNameFor(model => model.First_name)
@Html。 DisplayNameFor(model => model.Last_name)
@Html .DisplayNameFor(model => model.Mobile_number)
@ Html.DisplayNameFor(model => model.Expected_visit_date)
@ Html.DisplayFor(modelItem => item.First_name)
@ Html.DisplayFor(modelItem => item.Last_name)
@ Html.DisplayFor(modelItem => item.Mobile_number)
@ Html.DisplayFor(modelItem => item.Expected_visit_date)
@ Html.ActionLink(编辑,编辑,新{id = item.ID})|
@ Html.ActionLink(详细信息,详细信息,新{id = item.ID})|
@ Html.ActionLink(删除,删除,新{id = item.ID})
访客控制器代码
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web .Mvc;
使用System.Data.Entity;
使用System.Net;
名称空间VMS_Dummy。控制器
{
公共类访客控制器:控制器
{
私人EBSDev_VMSDummy db = new EBSDev_VMSDummy();
公共ActionResult索引()
{
返回查看(db.Visitors.ToList());
}
[HttpPost]
公共ActionResult索引(字符串SearchTerm)
{
列表访客;
if(string.IsNullOrEmpty(SearchTerm))
{
访客= db.Visitors.ToList();
}
else
{
visitor = db.Visitors。其中(v => v.First_name.StartsWith(SearchTerm))。ToList();
}
返回查看(访客);
}
public JsonResult GetVisitors(字符串术语)
{
列表访问者;
visitor = db.Visitors.Where(v => v.First_name.StartsWith(term))。选择(x => x.First_name).ToList();
返回Json(访客,JsonRequestBehavior.AllowGet);
}
}
}
("#txtSearch").autocomplete({
source: "@Url.Action("GetVisitors")"
// minLength:2
});
});
</script>
@using(Html.BeginForm())
{
First Name
@Html.TextBox("SearchTerm", null, new { id="txtSearch" })
<input type="submit" value="Search" />
}
@Html.ActionLink("Create New", "Create")
@foreach (var item in Model) {
}
@Html.DisplayNameFor(model => model.First_name)
@Html.DisplayNameFor(model => model.Last_name)
@Html.DisplayNameFor(model => model.Mobile_number)
@Html.DisplayNameFor(model => model.Expected_visit_date)
@Html.DisplayFor(modelItem => item.First_name)
@Html.DisplayFor(modelItem => item.Last_name)
@Html.DisplayFor(modelItem => item.Mobile_number)
@Html.DisplayFor(modelItem => item.Expected_visit_date)
@Html.ActionLink("Edit", "Edit", new { id=item.ID }) |
@Html.ActionLink("Details", "Details", new { id=item.ID }) |
@Html.ActionLink("Delete", "Delete", new { id=item.ID })
CODE OF VisitorController
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Data.Entity;
using System.Net;
namespace VMS_Dummy.Controllers
{
public class VisitorController : Controller
{
private EBSDev_VMSDummy db = new EBSDev_VMSDummy();
public ActionResult Index()
{
return View(db.Visitors.ToList());
}
[HttpPost]
public ActionResult Index(string SearchTerm)
{
List visitors;
if (string.IsNullOrEmpty(SearchTerm))
{
visitors = db.Visitors.ToList();
}
else
{
visitors = db.Visitors.Where(v => v.First_name.StartsWith(SearchTerm)).ToList();
}
return View(visitors);
}
public JsonResult GetVisitors(string term)
{
List visitors;
visitors = db.Visitors.Where(v => v.First_name.StartsWith(term)).Select(x => x.First_name).ToList();
return Json(visitors,JsonRequestBehavior.AllowGet);
}
}
}
检查此链接那里真正帮助我的信息。 http://dotnetawesome.blogspot.com/2013/12/autocomplete-textbox -without-webservice.html [ ^ ]
Check this link the info there realy helped me. http://dotnetawesome.blogspot.com/2013/12/autocomplete-textbox-without-webservice.html[^]
这篇关于如何在Mvc中实现自动完成文本框以搜索数据库中存在的数据/的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!