json踩坑

首先虽然调好了bug,但是这五个小时,我甚至都不知道错在哪

本来想草草写一篇博客充字数了事,但是刚刚强迫症犯了,又回去重新试了一下

发现了根本问题

问题描述如下:

// 通过id获取修改的客户信息
点击:
 修改

响应点击功能
function editStudent(student_id) {
$.ajax({
type:”get”,
url:”http://localhost:8080/fkbookapp/student/getStudentById.action“,
data:{“student_id”:student_id}, //表示需要发送的数据
success:function(data) {
(“#edit_student_id”).val(data.student_id);(“#edit_student_name”).val(data.student_name);
(“#edit_student_password”).val(data.student_password);  
        /*
(“#edit_student_sex”).val(data.student_sex); */
(“#edit_year”).val(data.year);  
            /*
(“#edit_linkMan”).val(data.cust_linkman);
(“#edit_phone”).val(data.cust_phone);(“#edit_mobile”).val(data.cust_mobile);
(“#edit_zipcode”).val(data.cust_zipcode);(“#edit_address”).val(data.cust_address); */

    }
});

}

/**
* 通过id获取客户信息
*/
@RequestMapping(“/student/getStudentById.action”)
@ResponseBody
public student getStudentById(String student_id) {
student student = adminService.getStudentById(student_id);
return student;
}
/**

以上是不完整代码段
本次问题时,当我弹出修改模态框的时候,数据没有及时更新

理想情况:

json踩坑_第1张图片
实际情况:
json踩坑_第2张图片

原因在于:在json传递数据时,要把
data:{“student_id”:student_id}里面,加引号部分参数名字与控制器中形参名称一致;public student getStudentById(String student_id)

附加:关于json

type
表示发送类型
data 表示发送的数据,可以是某个参数
本实例就是传递一个id参数,用于查找学生,返回此id对应的学生对象

contentType。表示发送请求的数据格式

dataType。:“json”。定义回调的数据格式

sucess:function(data){}//成功响应时,完成相应的数据操作,属于界面层级了

整体逻辑:
01 onclick()对应一个具体的function,并且有时会传递某个参数
02 执行function。此时需要控制器对他响应,(url)
03 响应过程中传递数据,controller处理后返回需要的json数据
04 在success中完成对数据的展示等操作

你可能感兴趣的:(javascript)