关于转向的问题,目前知道的是Response.Redirect 和 location.href

  我现在有两个controller,Home和Test

<h2>this is Home</h2>

<p id="test">大家好,我是Vae</p>
<button type="button" onclick="on()">点我</button> <script>
function on()
{
alert("我转向了啊");
@{
Response.Redirect("/Test/Index");
}
}
</script>

  Response.Redirect 这种方法呢,会直接的就转向了,那个alert没什么反应,而且貌似只能重定向到那个页面,不能返回HomeController?

  这里我不明白的是没有经过我的button点击事件就执行了JavaScript代码

  第二种方式比较好

<h2>this is Home</h2>

<p id="test">大家好,我是Vae</p>
<button type="button" onclick="on()">点我</button> <script>
function on()
{
alert("我转向了啊");
location.href="/Test/Index";
}
</script>

  这个还是很不错的,暂且写到这里

  2018.03.16更...

  其实.Net MVC只是作为后台,前端的页面目前来说,主要是用的Easy UI或者Bootstrap这两个。这两个前端框架,得花时间学一学基本的语法,还有就是控件怎么接受数据,这一点明白了就会了,恰好我什么都不懂啊,前端完全不会。看我几时能学会吧......

  Easy UI有一个表格控件DataGrid,我只知道它通过json来传输数据,目前我已知的方法有两种:

1.通过方法

2.通过url

第二种应该是最常用的,但是我还不会,来试试第一种。方法有三种,load,reload,loaddata。loaddata可以成功,前两种不行,目前不知道为啥

<link rel="stylesheet" type="text/css" href="http://www.w3cschool.cc/try/jeasyui/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="http://www.w3cschool.cc/try/jeasyui/themes/icon.css">
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="http://www.w3cschool.cc/try/jeasyui/jquery.easyui.min.js"></script> <div>
<table id="dg" class="easyui-datagrid" style="width:300px;height:250px" title="测试" iconCls="icon-save">
<thead>
<tr>
<th field="name" width="">Item ID</th>
<th field="pass" width="">Product ID</th>
</tr>
</thead>
</table>
</div> <script type="text/javascript">
$(function () {
var json='{"total":1,"rows":[{"name":"jim","pass":3}]}';
var aa=$.parseJSON(json);
$("#dg").datagrid("loadData",aa);
}); </script>

2018.03.19更...

EasyUI控件怎么绑定数据这件事,我以及会了,突然有一种感觉,这些前端框架我以及可以自由运用了

拿最经典的DataGrid来举个例子,在.Net NVC里面最常用的绑定数据的方式是这样的:

function Test() {
$('#tbVehicleList').datagrid({
url: '/MileageAnalysis/FindMileage',
columns: [
[
{ field: 'ck', checkbox: true }, //复选框
{ title: '姓名', field: 'name', width: , sortable: false },
{ title: '年龄', field: 'age', width: } ]
],
        

success: function (data) {
if (data.Success) {
showTips("删除选定的记录成功");
$("#tbVehicleList").datagrid("reload");
//当删除完成之后,第二次删除的时候还记得上次的信息,这样是不可以的,所以我们需要清除第一次的信息
// rows.length = ""; //第一种方法
$("#tbVehicleList").datagrid("clearSelections"); //第二种方法
} else {
showError("操作失败:" + data.ErrorMessage, 1000);
}
}


            })
}

就是一个url指向一个Controller里面的某个ActionResult。然后在column里面写出你想展示的列。

那个ActionResult会返回一个json格式的字符串,EasyUI会自己去加载的,返回的json格式是这样的:

"{\"total\":1,\"rows\":[{\"name\":\"蜀云泉\",\"age\":18}}"

因为""双引号需要转义,所以加  \

这里需要提醒一下,json格式必须是这样的,必须加total,有rows,否则是加载不出来数据的。还有,rows里面的key名,要和你的DataGrid里指定的列名一致。

    public ActionResult FindMileage()
{
string s;
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://yingyan.baidu.com/api/v3/track/getdistance?ak=Cc2jtfLRovsm7fB7yYmLGRWcN6pKA1Et&service_id=147202&entity_name=668304050243483&start_time=1519784148&end_time=1519870548");
req.Method = "GET";
WebResponse wr = req.GetResponse();
Stream ResStream = wr.GetResponseStream();
Encoding encoding = Encoding.GetEncoding("UTF-8");
StreamReader streamReader = new StreamReader(ResStream, encoding);
s=streamReader.ReadToEnd(); JSONObject obj = new JSONObject(s);
string dis = obj.GetString("distance"); string test ="{\"total\":1,\"rows\":[{\"VehicleID\":\"粤B8C97M\",\"Mileage\":33271.613108398}]}"; return Content(test); }

2018.03.20更...

上次讲到了怎么通过url来获取json,现在来讲讲怎么传参数过去

1.先说说控件的事,控件有时间控件,输入框控件,下拉框控件等等,获取值的方法是不一样的,如下:

下拉框:$("#id").combobox('getValue')
时间框:$("#id").datebox('getValue')
文本输入框:$("#id").val()
树形框:combotree('getValue')
数字输入框:numberbox('getValue')
//h3这种标签的取值赋值
$('#h3').val()
$('#h3').text = '修改询价';

//输入框这种的取值赋值
$('#Company').val()
$('#Company').val(CompanyName)

2.来讲讲传参的事,目前我所知的有两种

第一种:在url里面直接写上参数,这种方式是在Router路由里面写的,可以用。但是我不喜欢这种方式

  url: '/Controller/Action/?Params1=a&Params2=b',

第二种:异步传参

<script type="text/javascript">
$(function () {
BindSearchEvent();
}); function BindSearchEvent() {
$("#btnSearch").click(function () { var queryData = {
_ZB_VehicleID: $("#StartTime").datebox('getValue'),
_ZB_Remark: $("#EndTime").datebox('getValue')
}
InitVehicleList(queryData);
return false;
});
} function InitVehicleList(queryData) { $('#tbVehicleList').datagrid({ url: '/MileageAnalysis/FindMileage',
queryParams: queryData, //异步查询的参数 columns: [
[
{ field: 'ck', checkbox: true }, //选择
{ title: '车辆名称', field: 'VehicleID', width: 150, sortable: false },
{ title: '里程数', field: 'Mileage', width: 0 } ]
]
})}
</script>

写了一个最简单的例子,初始化函数里面调用了

BindSearchEvent()

然后这个方法里面定义了queryData这个异步的参数,直接传给

InitVehicleList()

然后写个下面的就完事了

 queryParams: queryData,  //异步查询的参数

那么,我的MVC后天怎么调用呢?

public ActionResult FindMileage()
{
string StartTime = Request["_ZB_VehicleID"];
string EndTime = Request["_ZB_Remark"];
}

就是这样。我觉得,我又牛逼了一点点........

2018.03.28更...

  我终于学会了Bootstrap表格加载json数据的方法,啊哈哈哈哈!!!,网上的文章大部分根本没有讲解清除,天下文章一大抄。。。。

  我历经了好多磨难,才会了bootstrap-table的使用,推荐看我的这篇博客。。。

我的文章

2018.04.08更新...

  我经历了恼人的痛苦,为了体验C#的新特性,我把.Net 框架升级到了4.5,结果降版本的时候降不回去了,但是发布的时候,服务器又是4.0的框架,老旧的windows server 2008 r2 不支持4.5版本框架,必须安装一个sp1补丁包才可以....麻烦的要死,教训是,以后最好不要升级框架版本,发布的时候遇到了一个问题,详情见 我的文章

2018.04.13更新...

  今天学习一下ajax的用法,ajax主要是来异步传参数的,切记,ajax不能访问具有下载功能的方法,说多了都是泪啊。。。

ajax用法:

  var queryData = {
CourseId: ids
} $.ajax({
type:'post',
url: '/SelectCourse/InsertCourse',
data: queryData,
traditional: true });

  参数一定要写成上面的queryData那样的格式!

如果你传的参数是字符串,那么

traditional:true

可写,可不写,但是如果你传的参数是数组,那么必须写了。

  后台还是这样:

public ActionResult InsertCourse()
{
var data = Request["CourseId"];
}

  完美

.Net MVC个人笔记的更多相关文章

  1. MVC学习笔记

    7 天玩转 ASP.NET MVC 阅读笔记 1.Web Form的问题 1.响应慢,web控件转化成html需要时间 2.带宽消耗,页面保存web控件的状态(viewstate) 3.由web控件生 ...

  2. MVC学习笔记索引帖

    [MVC学习笔记]1.项目结构搭建及单个类在各个层次中的实现 [MVC学习笔记]2.使用T4模板生成其他类的具体实现 [MVC学习笔记]3.使用Spring.Net应用IOC(依赖倒置) [MVC学习 ...

  3. .NET MVC学习笔记(一)

    看了些关于MVC的资料,做一些MVC的笔记. 分解关注点 在MVC世界里有个很重要的观念--"分解关注点"(Separation of Concerns),指的是:当你进行软件开发 ...

  4. ASP.NET MVC学习笔记-----Filter2

    ASP.NET MVC学习笔记-----Filter(2) 接上篇ASP.NET MVC学习笔记-----Filter(1) Action Filter Action Filter可以基于任何目的使用 ...

  5. ASP.NET MVC学习笔记-----Filter

    ASP.NET MVC学习笔记-----Filter(1) Filter类型 接口 MVC的默认实现 Description Authorization IAuthorizationFilter Au ...

  6. Spring MVC 学习笔记一 HelloWorld

    Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...

  7. 第63节:Java中的Spring MVC简介笔记

    前言 感谢! 承蒙关照~ Java中的Spring MVC简介笔记 MVC简介 Spring MVC 基本概念 Spring MVC 项目搭建 maven 使用Spring MVC进行开发 实现数据绑 ...

  8. .NET MVC 学习笔记(一)— 新建MVC工程

    一..NET MVC 学习笔记(一)—— 新建MVC工程 接触MVC有段时间了,一直想找机会整理一下,可是限于文笔太差,所以一直迟迟羞于下手,想到最近做过的MVC项目也有一些了,花点时间整理一下方便以 ...

  9. Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...

  10. Spring MVC 学习笔记11 —— 后端返回json格式数据

    Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...

随机推荐

  1. Vue中常用的三种传值方式

    父传子 父子组件的关系可以总结为prop向下传递,事件向上传递.父组件通过prop给子组件下发数据,子组件通过事件给父组件发送消息. 父组件: <template> <div> ...

  2. Spring Framework: @RestController vs @Controller

    https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/bind/annota ...

  3. WebService概述

    一.WebService介绍 什么是WebService? 一言以蔽之:WebService是一种跨编程语言和跨操作系统平台的远程调用技术. 所谓跨编程语言和跨操作平台,就是说服务端程序采用java编 ...

  4. Java之枚举举例

    package enumdemo; /** * 枚举类 */ public enum MAPPER { // 实例 ELEMENT_NAME("mapper"), ATTRIBUT ...

  5. BZOJ4455 ZJOI2016小星星(容斥原理+树形dp)

    相当于给树上的每个点分配一个编号使父亲和儿子间都有连边. 于是可以考虑树形dp:设f[i][j][k]为i号点的编号为j,其子树中编号集合为k的方案数.转移显然.然而复杂度3n·n3左右,具体我也不知 ...

  6. mvc Filters 过滤器

    项目需要控制controller和action的访问权限. 看了下资料,发觉还是很方便的. 首先在mvc项目下创建一个文件夹 Filters, 然后在Filters中创建一个类.代码如下 namesp ...

  7. 详解HTTP协议

    一 什么是HTTP协议 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议.HTTP 是基于 TCP/ ...

  8. windows下安装PyTorch0.4.0

    PyTorch框架,据说2018.4.25刚刚上架windows,安个玩玩 我的环境: windows 10 anaconda虚拟环境python3.6 cuda9.1 cudnn7 pytorch  ...

  9. MT【33】证明琴生不等式

    解答:这里数学归纳法证明时指出关键的变形. 评:撇开琴生不等式自身的应用和意义外,单单就这个证明也是一道非常不错的练习数学归纳法的经典题目.

  10. 自学Aruba2.2-Aruba Web UI --Monitoring面板介绍

    点击返回:自学Aruba之路 自学Aruba2.2-Aruba Web UI --Monitoring面板介绍 1. Monitoring面板-NETWORK Network Summary      ...