修改数据
下面是我最近学习的对修改的总结
首先要在视图写点击修改按钮弹出修改的模态框
function 自定义方法名(主键ID) {
先清空表单
$("#此处填写表单ID “).resetForm();
这里写查询数据回填
$.post(“请求方法路径”, {它的参数}, (后面的function都是回调函数)function (returnData) {
//下拉框数据绑定&数据回填
createSelect(“模态框下拉框ID”, “下拉框查询方法名”, returnData.DepartmentID);
//获取隐藏域里面的数据
$(”#EmployeeID").val(returnData.EmployeeID);
$("#UserID").val(returnData.UserID);
//其他表单数据回填
loadDatatoForm(“formUpdateEmployee”, returnData); });
// loadDatatoForm把数据回填到form表单的封装方法,具体如下图所示:
然后再绑定下拉框数据
createSelect(“模态框的下拉框ID”, “对应下拉框ID的查询方法”);
如果还有下拉框的话就按照上面的格式继续绑定下拉框数据(这里只写了一个)
然后再弹出新增模态框
KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲此处是模态框ID ").mod…("#模态框表单ID [name=‘EmployeeNumber’]").val();
name后面是模态框里面文本框下拉框的命名,在编写前端时表单的文本框,下拉框命名必须与数据库命名对应一致,这样才能实现数据的对应接受。
然后下面再写数据完整性验证,注意要和上面声明的命名对应
if (departmentId > 0 && positionId > 0 && address != “” && cellphone != “” && employeeNumber != “” && phone != “” && employeeName != “” && remark != “”) {
//打开加载层
layIndex = layer.load();
//提交表单
//ajaxSubmit()提交表单:我们直接通过form提交的话,提交后当前页面跳转到form的action所指向的页面。然而,很多时候我们并不希望提交表单后页面跳转,那么,我们就可以使用ajaxSubmit(obj)来提交数据,ajaxSubmit(obj)方法是jQuery的一个插件jquery.form.js里面的方法,所以使用此方法需要先引入这个插件
$("#模态框表单ID ").ajaxSubmit(function (returnJson) {
// returnJson 用来接收返回的数据
//关闭加载层
layer.close(layIndex);
//修改成功
然后再在控制器写保存的修改方法
public ActionResult 自定义方法名(参数)
{
ReturnJsonVo returnJson = new ReturnJsonVo();
ReturnJsonVo是接受状态的自定义类
try
{
//判断员工信息是否与数据库已有数据重复
int countEmployee = (from 自定义表1 in myModels.PW_Employee
where 自定义表1.EmployeeID != pwEmployee.EmployeeID &&
自定义表1.EmployeeName == pwEmployee.EmployeeName &&
(自定义表1.EmployeeNumber == pwEmployee.EmployeeNumber ||
自定义表1.Cellphone == pwEmployee.Cellphone ||
自定义表1.Phone == pwEmployee.Phone)
select tbEmployee).Count();
if (countEmployee == 0)
{
//提取需要修改的员工信息
PW_Employee 自定义表2 = (from 自定义表1in myModels.PW_Employee
where自定义表1.EmployeeID == pwEmployee.EmployeeID
select 自定义表1).Single();
字段2.EmployeeNumber = pwEmployee.EmployeeNumber;
根据上面依次写需要修改的数据
//保存修改
myModels.Entry(自定义表2).State = EntityState.Modified;
后面的判断语句我就不写了