上学期在工作室学的是.NET WebForm技术,那会才知道完整的网站开发是这个模样,不过范围还是在.Net 平台上。但头疼之处也是从这里开始,由于控件的加入,完整的项目开发并不像写纯前端页面那样纯粹。但从对于新手友好度来说,我觉得还是不错的,毕竟拖个控件就OK了。这个学期的mvc技术,使得视图层和后台代码分开而不是像WebForm那样紧密结合,从而让负责不同端的开发人员可以更好的编写代码。这篇文章粗略描绘下如何使用jQuery库的Ajax技术向后端API请求数据。

描述下我的业务需求,是在首页有两个分别为年级和学科的下拉框,点击年级会展示对应的学科。年级的数据是早已渲染好的,现在要实现的是后半部分,即展示相应年级的学科。先前有粗略想过客户端筛选,即先把所有科目数据渲染到前端,在前端点击年级的时候进行科目筛选,但也没有细想如何实现。也想过的还有,写一个专门的方法负责年级对应科目的查询,但是没想明白如何在不用jQuery的情况下就在点击的瞬间完成查询且将数据渲染到前端。

所以将要分享的方法是用jQuery实现访问后台API获取数据的。

后端代码

public ActionResult getsubject(int id){var sub= subjectSer.getsubject(id);return Json(sub,JsonRequestBehavior.AllowGet);}  

这里因为采用了三层结构,所以后端代码较简单,一条代码查数据,另一条代码是返回查询到的数据,这里有几个坑要说下,因为前端是用Ajax请求的数据,所以控制器返回的应该是JSON格式的数据,这样就应该在return后加上JSON,使得能够创建一个JSON对象返回到前端。第二个坑是“此请求已被阻止,因为当在用GET请求中时,会将敏感信息透露....请将JSONRequestBehavior设置为AllowGet”,Json方法有一个重构是protected internal JsonResult Json(object data,JsonRequestBehavior behavior),现在需要把行为设置为允许访问。三层中具体获取数据的代码在这里略去不表。

再看前端的Ajax请求,

    $("#choosegrade ul li span").click(function(){var grade_id = $("#choosegrade ul li span").attr("data-id");$.get("/Index/getsubject/" + grade_id, function (data, status) {alert(data + status);})})

第一行是找到鼠标点击对应的年级,然后是获取点击年级的对应ID(在这里因为前端没有对年级ID的渲染需求,所以这里把ID放到了可自定义的属性data-*中),再就是用jQuery的AJax方法获取数据了,jQuery牛逼。截止写这篇文章,对数据的处理还没写完。

如何用jQuery访问后台API,实现真正的前后端分离相关推荐

  1. 开发一个大型后台管理系统,应该用前后端分离的技术方案吗?

    话说这天,我们团队开会讨论了一个问题,不,与其说"讨论",不如说"争吵"更合适. 背景是这样的: 我们要开发一个 xxx 后台管理系统,这个系统业务复杂.功能又 ...

  2. api权限管理系统与前后端分离实践

    https://segmentfault.com/a/1190000014368885 转载于:https://www.cnblogs.com/java-le/p/9759679.html

  3. 【官方推荐】Laravel7 + Vue2.0前后端分离框架通用后台源码

    laravel7 + vue + element-ui的后台极速开发框架,采用前后端分离架构,安全性 (JWT 校验.中间件.验证器.路由.异常处理.权限控制) 网址:http://139.155.4 ...

  4. 开发一个大型后台管理系统,真的需要用前后端分离的技术方案吗?

    话说这天,我们团队开会讨论了一个问题,不,与其说"讨论",不如说"争吵"更合适. 背景是这样的: 我们要开发一个 xxx 后台管理系统,这个系统业务复杂.功能又 ...

  5. Thinkphp 6 + Vue 2 + ElementUI + Vxe-table 前后端分离的,一键生成代码和API接口的,通用后台管理系统 快速开发框架,开发小程序和APP的推荐框架!

    Thinkphp 6 + Vue 2 + ElementUI + Vxe-table 前后端分离的,一键生成代码和API接口的,通用后台管理系统 快速开发框架,开发小程序和APP的推荐框架! 概述 R ...

  6. 若依前后端分离版源码分析-前端头像上传后传递到后台以及在服务器上存储和数据库存储设计

    场景 使用若依前后端分离版本时,分析其头像上传机制. 可作为续参考学习. 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获 ...

  7. 基于springboot2.0跟layui构建的前后端分离后台管理系统

    Active4j-boot是基于SpingBoot2.0轻量级的java快速开发框架.以Spring Framework为核心容器,Spring MVC为模型视图控制器,Mybatis Plus为数据 ...

  8. 开发SpringBoot+Jwt+Vue的前后端分离后台管理系统VueAdmin - 前端笔记

    1. 前言 而接下来,我们即将开发一个前后端分离的后台管理系统VueAdmin.权限框架采用spring security,然后相对来说权限模块开发就多点代码,也仅此而已了.对了前端的系统界面也是我们 ...

  9. react 访问后端_React框架学习(二)——前后端分离,整合,部署

    前后端分离 前端与后端分离开发,主要为了解耦与提升效率.基于react框架的特殊性,出现了一个本地后台,来支持前端开发,并且页面通过该本地后端访问,数据则通过访问后端提供获取数据的API来获取. 整合 ...

  10. Vue前后端分离的电商后台管理系统项目的概述

    (1)该项目是基于前后端分离的开发模式,基于Vue技术栈的SPA单页面项目, 后端主要操作数据库并向前端暴露一些API接口 前端主要负责绘制页面同时,利用Ajax调用后端提供的接口. 这样的开发模式使 ...

最新文章

  1. 六一欢乐赛 考试总结
  2. angularjs入门(四)
  3. [HEOI2014]平衡(整数划分数)
  4. Nginx的index指令
  5. 你不会知道,一个小小电阻也很奇妙!
  6. Qt设置QWidget背景色4种方法
  7. statusbar 尺寸 显示图标_移动端页面设计规范尺寸大起底 - 椰树飘香
  8. Dubbo(三)之Spring zookeeper集成
  9. .NET NPOI导出Excel详解
  10. libevent c++高并发网络编程_高并发编程学习(2)——线程通信详解
  11. 一文带你读懂Self-Supervised Learning(自监督学习)
  12. Spring mvc Controller接口
  13. android 4.0 屏蔽home键实现
  14. jQuery Howto: 如何快速创建一个AJAX的加载的图片效果
  15. 机器学习——层次聚类(超详细)
  16. 6.2创建Docker镜像文件
  17. 定义m是第一个数,之后的每个数都是前一个的平方根,一共有n个数,计算总和。
  18. 使用阿里云npm镜像加速
  19. ARM体系结构与编程模型总结
  20. 技嘉主板的 BIOS 问题解决

热门文章

  1. pytorch实现resnet50
  2. 用U盘与移动硬盘制作WIN7启动盘(亲自实践)
  3. 第1章 Pandas基础
  4. 求伴随矩阵和逆矩阵C++
  5. 软考备考-系统构架师-21-系统架构师考纲整理
  6. does not have permission to content://包名/external_files/sple/IMG_123123141.jpg
  7. CNKI 中国知网全文数据库账户密码免费入口
  8. 微信小程序image图片标签(超详细)
  9. 使用C语言写入word文档 C语言编程基础
  10. Java JDBC连接数据库 UPDATE更新