zoukankan      html  css  js  c++  java
  • ASP.NET Core中的jQuery Unobtrusive Ajax帮助器

    最近在ASP.NET Core下写文章管理系统时,准备在分页显示文章内容时,使用Ajax。网上找了篇帖文,简单翻一下,仅供自己查阅。

    原链接:https://dotnetthoughts.net/jquery-unobtrusive-ajax-helpers-in-aspnet-core/

    原标题:jQuery Unobtrusive Ajax Helpers in ASP.NET Core

    原作者:Anuraj

    本贴讲述了如何在ASP.NET Core中获取jQuery Unobtrusive Ajax帮助器。AjaxHelper类为用AJAX渲染HTML视图提供支持。如果你想将现有的ASP.NET MVC项目迁移到ASP.NET Core MVC,却没有现成的标记帮助器可供替换,取而代之的是ASP.NET Core团队建议使用data-*属性。所有现存的@Ajax.Form属性都可用于data-*属性。

    要使用它,你首先需要引用jquery和jquery.unobtrusive-ajax脚本,可以通过bower下载并安装它。

    这是通过bower安装该脚本库的命令:

    bower install Microsoft.jQuery.Unobtrusive.Ajax
    

     
    一旦你安装了该脚本,你就可以在_layout.cshtml文件引用它:

    <script src="~/lib/Microsoft.jQuery.Unobtrusive.Ajax/jquery.unobtrusive-ajax.min.js"></script>
    

     
    以下是可用于迁移@Ajax.Form帮助器的属性:

    AjaxOptions HTML attribute
    Confirm data-ajax-confirm
    HttpMethod data-ajax-method
    InsertionMode data-ajax-mode
    LoadingElementDuration data-ajax-loading-duration
    LoadingElementId data-ajax-loading
    OnBegin data-ajax-begin
    OnComplete data-ajax-complete
    OnFailure data-ajax-failure
    OnSuccess data-ajax-success
    UpdateTargetId data-ajax-update
    Url data-ajax-url

     你像这样在表单(Form)元素中添加这些属性:

    <form asp-controller="Home" asp-action="SaveForm" data-ajax="true" data-ajax-method="POST">
    </form>

     
    下列代码,将在提交表单时显示进度指示器,一旦完成(onComplete)、成功(onSuccess)或失败(Failed),它将显示警告消息。

    var results = $("#Results");
    var onBegin = function(){
        results.html("<img src="/images/ajax-loader.gif" alt="Loading" />");
    };
    
    var onComplete = function(){
        results.html("");
    };
    
    var onSuccess = function(context){
        alert(context);
    };
    
    var onFailed = function(context){
        alert("Failed");
    };


    这是HTML表单:

    <form asp-controller="Home" asp-action="SaveForm"
        data-ajax-begin="onBegin" data-ajax-complete="onComplete"
        data-ajax-failure="onFailed" data-ajax-success="onSuccess"
        data-ajax="true" data-ajax-method="POST">
        <input type="submit" value="Save" class="btn btn-primary" />
        <div id="Results"></div>
    </form>
  • 相关阅读:
    1-27 awk 基本使用
    计算机网络(一)带宽
    CRC检错技术原理
    Wireshark漫谈(一)
    SQL字符串拼接
    MySQL学习笔记(二)
    MySQL学习笔记(一)
    Java 反射机制(二)
    Java 反射机制(一)
    Windows使用MySQL数据库管理系统中文乱码问题
  • 原文地址:https://www.cnblogs.com/moonblogcore/p/11658533.html
Copyright © 2011-2022 走看看