zoukankan      html  css  js  c++  java
  • 初识MVC框架--Controller与View交互2

    在初识MVC框架–Controller与View交互1中,我们介绍了几种常见的Controller和View之间传递数据,下面我们通过Web开发框架项目中一个例子为大家讲解三种经典方式。

    • Html页面代码
    • javascript代码
    • 后台action
    • 三种交互方式讲解

    Html页面代码

    @using (Html.BeginRouteForm("ProductSearch", FormMethod.Get, new { onsubmit = "return check_small_search_form()" }))
    {
        <li class="input-group" style="margin-top:20px;">
            <input type="text" style="height:40px; 260px; float:right;"  id="small-searchterms" @(Model.AutoCompleteEnabled ? 
                   Html.Raw(" autocomplete="off"") : null)
                   value="@T("Search.SearchBox.Tooltip")" name="q"  onfocus="if(this.value=='@T("Search.SearchBox.Tooltip")')
                   this.value=''" onblur="if(this.value=='') {this.value = '@T("Search.SearchBox.Tooltip")';}" />
            <span class="input-group-btn">
                <button type="submit" class="btn btn-default"> 搜产品 </button>
            </span>
            <span class="input-group-btn">
                <button type="button" onclick="seacharticle()" class="btn btn-success"> 搜文章 </button>
            </span>
        </li><!-- /input-group -->
    }
    

    javascript代码

     function seacharticle()
     {
            var chek=check_small_search_form();
            if(chek){
                var searchcontent='q='+$("#small-searchterms").val();
                location.href = "/Catalog/SearchArticle?"+searchcontent;
            }
            @*var searchcontent=$("#small-searchterms").val();
            var disoptioan = {
                url: "@Url.Action("SearchArticle", "Catalog")",
                type: 'Get',
            dataType: 'json',
            data: searchcontent,
            context: this,
            success: function (result) {
            //页面刷新代码
            }
            };
            $.ajax(disoptioan);*@
     }
    

    后台action

    [NopHttpsRequirement(SslRequirement.No)]
     [ValidateInput(false)]
     public ActionResult Search(SearchModel model, CatalogPagingFilteringModel command)
     {
     //处理...
      return View(model);
     }
    
    [NopHttpsRequirement(SslRequirement.No)]
    [ValidateInput(false)]
    public ActionResult SearchArticle(SearchArticleModel searchArticleModel)
    {
              
        //.........方法处理
        return View(searchArticleModel);
        //return Json(searchArticleModel, JsonRequestBehavior.AllowGet);
    }
    

    三种交互方式讲解

    1、搜产品Html.BeginRouteForm(…):表单提交方式,通过button type=“submit” 方式整体交互,注意表单参数要与action一致。
    2、搜文章onclick=“seacharticle()” :javascript页面交互方式,通过location.href 方式交互,注意querystring字符串拼写正确。
    3、Ajax $.ajax(disoptioan):通过ajax数据交互异步刷新页面,注意该方式只能刷新当前页面局部视图,不可跳转到其他页面。

    转载说明:文章转载自:云微平台-web开发框架 » 初识MVC框架–Controller与View交互2

  • 相关阅读:
    爬虫实践-微博关键词搜索抓取
    爬虫实践-拉勾网测试经理JD抓取【2018.05.15】
    爬虫实践--租房信息查找
    服务器python发送mail无法发出问题
    我的面试流程梳理
    字典树模板(前缀查找、整串查找)
    搬运工程 启动!
    开始收集模板啦!
    WPS表格中不能输入中文 or其他
    ubunt命令
  • 原文地址:https://www.cnblogs.com/frfwef/p/12516516.html
Copyright © 2011-2022 走看看