开发工具与关键技术:VS, ASP.NET MVC
作者:谭威
撰写时间:2019年4月23日
在我解释修改返回数据之前,我得先解释一下我在下拉框绑定所使用的一个自定义方法,下面我会给到有关此方法的一幅图:
小括号里面的selectId代表的是下拉框的ID、url代表的是请求路径、value代表是返回值;一开始就判断下拉框的ID是否加了#,如果没有,就给其加上;$(selectId).empty();这句的意思是每点开一次修改模态框就清空上一次点击修改所回填的数据;至于下一句我是没有看懂的,你看懂你随意,我只知道这里是填写路径的地方;接着判断所要绑定的下拉框的返回值不能等于未定义、不能为空、不能等于字符串,当判断通过时,将所要绑定的下拉框的返回值赋值给这个下拉框。
这里我所要讲的是修改时要返回数据,下面我将给一副有关弹出修改模态框和回填数据的图:
在这里我得先说明我使用的是bootstrap来描述html代码,用layui的table和layer模块来描述js代码;上图中的重置表单的formUpdateEmployee代表的是里面放有填写资料的一个大框,而打开模态框中的modalUpdateEmployee代表的就是整个模态框;那个小括号的employeeID是我在之前就已经获取到我所要修改这条数据的EmployeeID(只是用employeeID接收),再传送过来;上图中的第一句话和第二句话我就不多解释了,上面也有注释,我要说的是第二句中的backdrop: false,和keyboard: false,这两句的意思是当我打开模态框时,按键盘的esc和点击空白处不退出模态框;接着发送请求并传送参数,当Visual Studio
2015的控制器返回到视图时,进入下一个函数,上面我也讲的了,createSelect是一个绑定下拉框和赋值的一个方法,这里我就不详讲绑定下拉框的控制器方法了,这个方法你首先要自定义一个类,这个类里面有选中值(id,这个不能显示在页面上)和显示值(text,这个能显示在页面上)两个字段,然后实例化这张表,让这张表的主键ID等于选中值,这张表的名称等于显示值,然后返回到视图就行了;loadDatatoForm这个方法我是看不懂的,所以就不讲了。
在上图中,EmployeeVo是我自定义的一个类,这个类继承PW_Employee(员工表)的所有字段和DeoartmentName(部门名称)、PositionName(职位名称)这两个字段;在这里我用try捕获异常,若捕获到异常,则跳到catch,就返回到视图并输出参数错误;若没有,我用EmployeeVo实例化的名字dbEmployee来接收到一些数据,这个数据是员工表连接部门表并且员工表的部门ID等于部门表的部门ID,连接职位表并且员工表的职位ID等于职位表的职位ID,条件为员工表中的员工ID等于我传送过来的员工ID(EmployeeID),并将这些表里面有关这个员工的数据赋值到我自定义的类中的字段,最后再返回到视图。