关于SCRIPT1015: 未结束的字符串常量

感谢:http://hi.baidu.com/vipwku/item/da7150ce1dc389db984aa00a


昨天,突然有个页面上线后突然发现IE下页面报错 SCRIPT1015: 未结束的字符串常量,而且很诡异的是只有某条数据加载进去时会报错

排查之后发现原因是因为函数 οnclick="showTeacherInfo('${(studentCourse.course.teacherName)!}','${(studentCourse.course.teacherInfo)!}')“

这个函数值${(studentCourse.course.teacherInfo)!}因为是直接读取的教师信息,但是真实的数据中有些教师信息是有换行符的。这样就造成了页面错误。(CHROME虽然不报错。鼠标单击时候会报错,如图:


感谢http://hi.baidu.com/vipwku/item/da7150ce1dc389db984aa00a的文章,如下修改一下就好了

首先把这个${(studentCourse.course.teacherInfo)!的值存到隐藏域中,并给一个唯一的ID名

之后函数传参时不传内容,传ID名 οnclick="showTeacherInfo('${(studentCourse.course.teacherName)!}','${studentCourse.courseInstance.id}')"

函数再根据ID名去取教师信息的值:

function showTeacherInfo(name,id){
var info =$("#teacherinfo_"+id).val();
......
}

你可能感兴趣的:(关于SCRIPT1015: 未结束的字符串常量)