最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP.NET?MVC通過勾選checkbox更改select的內(nèi)容

 更新時(shí)間:2022年09月16日 08:25:06   作者:Darren?Ji  
這篇文章介紹了ASP.NET?MVC通過勾選checkbox更改select內(nèi)容的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

遇到了這樣的一個(gè)需求:通過勾選checkbox來更改select的內(nèi)容。

在沒有勾選checkbox之前是這樣的:

在勾選checkbox之后是這樣的:

想通過ajax異步來實(shí)現(xiàn)。所以,從控制器拿到的json數(shù)據(jù),在控制器中應(yīng)該先是Dictionary<string, string>類型,然后再轉(zhuǎn)換成json格式。

在沒有勾選checkbox之前,select中內(nèi)容對應(yīng)的Model為:

    public class Old
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

在勾選checkbox之后,select中內(nèi)容對應(yīng)的Model為:

    public class NewItem
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

Home控制器中應(yīng)該給出對應(yīng)的json數(shù)據(jù)。

   public class HomeController : Controller
    {
        public ActionResult Index()
        {
            return View();
        }
        public ActionResult GetOld()
        {
            var olds = new List<Old>
            {
                new Old(){Id = 1, Name = "老版本1"},
                new Old(){Id = 2, Name = "老版本2"},
                new Old(){Id = 3, Name = "老版本3"}
            };
            IDictionary<string, string> result = new Dictionary<string, string> {{"-1","None"}};
            foreach (var item in olds)
            {
                result.Add(item.Id.ToString(), item.Name);
            }
            return Json(result, JsonRequestBehavior.AllowGet);
        }
        public ActionResult GetNew()
        {
            var news = new List<NewItem>
            {
                new NewItem(){Id = 1, Name = "新版本1"},
                new NewItem(){Id = 2, Name = "新版本2"}
            };
            IDictionary<string, string> result = new Dictionary<string, string> { { "-1", "None" } };
            foreach (var item in news)
            {
                result.Add(item.Id.ToString(), item.Name);
            }
            return Json(result, JsonRequestBehavior.AllowGet);
        }
    }

在Home/Index.cshtml視圖中,根據(jù)checkbox是否勾選來呈現(xiàn)不同的內(nèi)容。

@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Index</h2>
<div>
    <select id="v"></select>
</div>
<div>
    <span>是否選擇新版本:</span><input type="checkbox" id="cn"/>
</div>
@section scripts
{
    <script type="text/javascript">
        $(function () {
            //初始獲取老版本
            getOldOnes();
            //勾選checkbox事件
            $('#cn').on("change", function() {
                if ($(this).is(':checked')) {
                    getNewOnes();
                } else {
                    getOldOnes();
                }
            });
        });
        //獲取老版本
        function getOldOnes() {
            $.getJSON('@Url.Action("GetOld","Home")', function(data) {
                var $s = $('#v');
                $s.children().remove();
                $.each(data, function(key, value) {
                    $s.append('<option value="' + key + '">' + value + "</option>");
                });
                $s.effect('shake', { times: 4 }, 100);
            });
        }
        //獲取新版本
        function getNewOnes() {
            $.getJSON('@Url.Action("GetNew","Home")', function (data) {
                var $s = $('#v');
                $s.children().remove();
                $.each(data, function (key, value) {
                    $s.append('<option value="' + key + '">' + value + "</option>");
                });
                $s.effect('shake', { times: 4 }, 100);
            });
        }
    </script>
}

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • ASP.NET性能優(yōu)化之局部緩存分析

    ASP.NET性能優(yōu)化之局部緩存分析

    如果我們在開發(fā)網(wǎng)站過程中的緩存策略是不支持頁面局部緩存的,整個(gè)架構(gòu)就是不合理的
    2011-10-10
  • Request.UrlReferrer中文亂碼解決方法

    Request.UrlReferrer中文亂碼解決方法

    參考了網(wǎng)絡(luò)大部分的解決方案,沒一個(gè)能搞定的,如果窮途末路,試試下面的方法:將獲得的前一頁面的URL分成兩段,后面的參數(shù)部分進(jìn)行編碼(直接對URL編碼是不行的),然后再組合一下就可以了,需要的朋友可以了解下
    2012-12-12
  • Asp.Net二級域名共享Forms身份驗(yàn)證、下載站/圖片站的授權(quán)訪問控制

    Asp.Net二級域名共享Forms身份驗(yàn)證、下載站/圖片站的授權(quán)訪問控制

    我們平時(shí)一般在做圖片或者文件下載權(quán)限控制的時(shí)候基本都是控制到下載頁面的,當(dāng)你的下載地址暴露后,瀏覽者就直接可以通過文件地址進(jìn)行下載了,這時(shí)候也就出現(xiàn)了我們常說的盜鏈
    2012-02-02
  • 對GridView的行加顏色并彈出Kindeditor的實(shí)現(xiàn)思路

    對GridView的行加顏色并彈出Kindeditor的實(shí)現(xiàn)思路

    本文主要詳細(xì)介紹下對GridView的行加顏色并彈出Kindeditor,感興趣的朋友可以了解下,希望可以幫助到你
    2013-04-04
  • .NET?API?接口數(shù)據(jù)傳輸加密最佳實(shí)踐記錄

    .NET?API?接口數(shù)據(jù)傳輸加密最佳實(shí)踐記錄

    這篇文章主要介紹了.NET?API?接口數(shù)據(jù)傳輸加密最佳實(shí)踐記錄,我們在做?Api?接口時(shí),相信一定會(huì)有接觸到要給傳輸?shù)恼埱?body?的內(nèi)容進(jìn)行加密傳輸。其目的就是為了防止一些敏感的內(nèi)容直接被?UI?層查看或篡改,需要的朋友可以參考下
    2022-10-10
  • 實(shí)例說明asp.net中的簡單角色權(quán)限控制

    實(shí)例說明asp.net中的簡單角色權(quán)限控制

    權(quán)限控制在信息管理中屬于基本功能,權(quán)限控制中其中以Window權(quán)限為模型的角色用戶(也稱用戶組用戶)模型使用較多。本文以網(wǎng)站管理后臺權(quán)限控制為例簡要說明。
    2009-10-10
  • ASP.net(c#) 生成html的幾種解決方案[思路]

    ASP.net(c#) 生成html的幾種解決方案[思路]

    下面的文章轉(zhuǎn)載自網(wǎng)絡(luò),其代碼很多都有問題,這里只提供給大家一個(gè)思路.
    2009-05-05
  • WPF簡介與基礎(chǔ)開發(fā)

    WPF簡介與基礎(chǔ)開發(fā)

    WPF是微軟推出的基于Windows的用戶界面框架,這篇文章介紹了WPF的基礎(chǔ)開發(fā),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • Asp.Net Cache緩存使用代碼

    Asp.Net Cache緩存使用代碼

    本例完成建立緩存,清除緩存使用緩存進(jìn)行數(shù)據(jù)綁定
    2008-12-12
  • asp.net 分頁潛談

    asp.net 分頁潛談

    最近研究了一下Asp.net下的分頁功能。以前受前輩們的誤導(dǎo),人云已云的以為做分頁很難很麻煩。這一研究才發(fā)現(xiàn),分頁也不過如此嘛。
    2009-06-06

最新評論

广水市| 崇信县| 磐安县| 剑川县| 古丈县| 蒲江县| 上思县| 琼结县| 天峻县| 中卫市| 通渭县| 洞口县| 乡城县| 左贡县| 台州市| 惠安县| 婺源县| 太湖县| 田东县| 甘德县| 海城市| 宝清县| 措美县| 游戏| 策勒县| 重庆市| 安福县| 志丹县| 清水县| 平遥县| 永州市| 武冈市| 安新县| 莒南县| 光山县| 江都市| 罗平县| 彭阳县| 苍南县| 正宁县| 凤台县|