第一段
1、JS引用:可以放在head中或者放在body中
(1)放在head中是因为有些页面一加载就需要有JS控件
(2)放在body中是为了更好的性能(一般放在body中)
2、XMLHttpRequest对象的两个方法
(1)open():默认异步
参数一:请求类型:GET或POST
参数二:url:文件在服务器的位置
参数三:true(异步)或false(同步)
(2)send():发送数据
括号中一般放数据formData,也可以没有参数
3、Ajax服务器响应
(1)Xhr.responseText():获得字符串形式的响应数据
(2)responseXML():获得XML形式的响应数据
4、将字母转化为小写:toLowerCase()
5、错误集合:一般最后面为“defined”都是未定义的意思,就是is 这个单词前面的名称没有定义
(1):未定义xhr
(2):因为是复制上面的代码,导致下面key未定义,因为循环 里面的代码是依靠for in循环的,而用的循环却是for循环
6、获取数据总条数要在分页之前,表格查询如果不排序就会在分页 的代码哪里报错
第二段
1、在Vo中,不能同时继承多张表,如果非要继承多表,那么只能间 接继承
2、控制器输出代码:Debug.WriteLine(要输出的内容)
在视图、输出里面看
3、控制器中正则中的中文验证:Regex.IsMatch(specialtyName, “[\u4E00-\u9FA5]”)
4、错误:
(1)修改回填,
第一个错:使用post请求时,要使用FormData发送数据,
还有把弹出写在模态框填写数据代码的下面,不 能写在发送数据 send后面
第二个错:回填的字段写错,专业名称写成学院名称了
第三个错:用JS中的value不能像jQuery中的val那样,直接 将值放在括号中,而是应该直接用赋值的形式
第三段
1、一般值都是有默认值的,就像实体类(returnJson)中的四个字段, State因为是布尔值,所以默认为false,
int类型的默认为0,
object类型的默认为null
String类型默认为null
2、新增和修改如果共用模态框,那么获取数据、数据验证、请求数 据都是可以共用的。只不过需要注意的点是在控制器新增方法也 要接收多一个ID值。
3、MVC中的转换
(1)强制转换(又叫显示转换):一般在要转换的数据前面加一 个括号,然后在括号中加要转换的类型。但是强制转换如 果两边类型不对应转换不了那么代码会直接报错
(2)自动转换(又叫隐式转换):一般在要转换的数据后面加一 个as,然后在as后面加要转换的类型。如果可以转换,那 么会强制转换,如果转换不了,那么不会报错只会返回 一个null
4删除的时候一定要记得判断该条数据下面有没有关联的数据
5、ViewData和viewBug之间可以互相接收数据:
需要注意的是,ViewBug是基于ViewData的封装,所以如果用 viewBug来接收ViewData是正常的,不需要转换。
但是当用ViewData来接收ViewBug的时候,这个时候就需要用 as来转换一下
6、时间处理有两种方式:
(1)在控制器中查询出来的时候在实体类中进行转换
(2)直接用JS进行转换,如果调用该方法一定要写返回值
7、递归的理解
递归:根据用户组中上级用户ID去匹配,找到和上级用户ID相 等的用户组ID字段,在凭借该用户组ID去到用户表,找 出用户组ID等于该ID的用户
二次递归(多次递归):如果该用户还有下级,那么凭借该用户组 ID去到用户组表找出与该ID相等的上级用户ID字段,然后再 凭借该字段找到该条数据的主键ID(用户组ID)去到用户表, 找出与该ID相等的用户组ID字段。多次递归同理
8、获取是否勾选:一定要记得加冒号:,:checked