国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JQuery異步加載PartialView的方法

2019-11-20 09:46:36
字體:
來源:轉載
供稿:網友

本文實例講述了JQuery異步加載PartialView的方法。分享給大家供大家參考,具體如下:

需求:頁面上有dropdown之類的控件,當選擇里面不同值的時候,下面關聯的內容跟著改變。

思路:把與 dropdown關聯的會改變的內容放到PartialView(ascx)里,用JQuery綁定dropdown的change事件,當選擇值改變時,用JQuery ajax請求與PartialView相關的Action,得到數據后講取到的內容覆蓋原來的內容。

實現:

Model 類:

public class User{    public string UserName { get; set; }    public int Age { get; set; }    public int UserID { get; set; }    public static List<User> GetUsers()    {      List<User> userList = new List<User>();      User user = null;      user = new User();      user.UserID = 1;      user.UserName = "小明";      user.Age = 20;      userList.Add(user);      user = new User();      user.UserID = 2;      user.UserName = "小紅";      user.Age = 21;      userList.Add(user);      user = new User();      user.UserID = 3;      user.UserName = "小強";      user.Age = 22;      userList.Add(user);      return userList;    }    public static User GetUserById(int userId)    {      return GetUsers().SingleOrDefault(u=>u.UserID==userId);    }}

我們的PartialView:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MvcApplication2.Models.User>" %><div>  <%if (Model != null)   {%>  用戶名:<%=Model.UserName%><br />  年齡:<%=Model.Age%>  <%} %></div>

主頁面:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<MvcApplication2.Models.User>" %><asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">  Index</asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">  <h2>Index</h2>  <%=Html.DropDownList("users", ViewData["users"] as List<SelectListItem>)%>  <div id="userDetails">    <%Html.RenderPartial("UserDetails", Model); %>  </div></asp:Content><asp:Content ID="Content3" ContentPlaceHolderID="HeadMeta" runat="server">  <script language="javascript" src="/Scripts/user.js" type="text/javascript"></script></asp:Content>

Controller類:

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Mvc;using MvcApplication2.Models;namespace MvcApplication2.Controllers{  public class UserController : Controller  {    public ActionResult Index()    {      List<SelectListItem> userIdList = new List<SelectListItem>();      foreach (MvcApplication2.Models.User item in MvcApplication2.Models.User.GetUsers())      {        userIdList.Add(new SelectListItem { Text = item.UserName,Value = item.UserID.ToString()});      }      ViewData["users"] = userIdList;      MvcApplication2.Models.User user = MvcApplication2.Models.User.GetUsers().FirstOrDefault();      return View(user);    }    public PartialViewResult UserDetails(int? userId)    {      MvcApplication2.Models.User user = null;      if (userId == null)      {        user = MvcApplication2.Models.User.GetUsers().FirstOrDefault();      }      else      {        user = MvcApplication2.Models.User.GetUserById(userId.Value);      }      return PartialView(user);    }  }}

我們需要在Master頁里指定我們的PartialView對應的Action路徑,這樣實現:

在Head里加上如下代碼:

<script language="javascript" type="text/javascript">    mySite = {    actions : {        userDetails: '<%=Url.Action("UserDetails","User")%>'    }};</script>

我們對應的JS代碼:

$(document).ready(function () {  $("#users").change(function () {    dropDownChange();  });});function dropDownChange() {  var userId = $("#users").val();  $.ajax({    type: "POST",    url: mySite.actions.userDetails,    data: { userId: userId },    success: function (data) {      $("#userDetails").html(data);    }  });}

這樣就實現了選擇相應的user,顯示對應的詳細信息了。

只是一個簡單的Demo,希望對需要此功能的人起到幫助作用。

更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jquery中Ajax用法總結》、《jQuery表格(table)操作技巧匯總》、《jQuery拖拽特效與技巧總結》、《jQuery擴展技巧總結》、《jQuery常見經典特效匯總》、《jQuery動畫與特效用法總結》、《jquery選擇器用法總結》及《jQuery常用插件及用法總結

希望本文所述對大家jQuery程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 睢宁县| 儋州市| 涿鹿县| 民乐县| 岚皋县| 吉首市| 文化| 铁岭县| 洪江市| 竹溪县| 宜章县| 晋宁县| 秦皇岛市| 莱西市| 天等县| 普宁市| 资阳市| 宁安市| 多伦县| 拉孜县| 广元市| 塔城市| 黄梅县| 探索| 保定市| 汶上县| 富顺县| 共和县| 杂多县| 兴海县| 郁南县| 宁国市| 丹东市| 罗源县| 卢湾区| 永年县| 合肥市| 林芝县| 竹北市| 明水县| 泰宁县|