当它在下面的代码中一直说 else { 时,我不太会遇到这种语法错误:
$(document).ready(function () {
var courseinfo = <?php echo json_encode($courseInfo);?> ;
$('#coursesDrop').change(function () {
var courseId = $(this).val();
/*
You only need to do all of this if user selects a course, so check that first.
*/
if (courseId !== '') {
/*
Iterate over courses and, if the one we want exists, populate its info.
*/
for (var i = 0, l = courseinfo.length; i < l; i++) {
if (courseinfo[i].CourseId == courseId) {
$('#currentDuration').val(courseinfo[i].Duration);
$('#newDuration').val(courseinfo[i].Duration);
$('#currentCourseId').val(courseinfo[i].CourseId);
$('#newCourseId').val(courseinfo[i].CourseId);
var text = $(this).find('option:selected').text();
var split = text.split(' - ');
$('#currentCourseNo').val(split[0]);
$('#currentCourseName').val(split[1]);
/*
Without this break, the loop will continue until i = l.
We've already found our match, no need to continue.
*/
break;
}
}
} else {
$('#currentCourseNo,#currentCourseName,#currentDuration,#currentCourseId').val('');
}
});
});
括号似乎是正确的,但为什么我在上面的代码中会出现这个语法错误?
确切的错误说Syntaxerror: syntax error
,然后在视图页面源中它只是突出显示 this else{
。
var courseinfo = <?php echo json_encode($courseInfo);?> ;
在页面源代码中输出以下内容:
var courseinfo = [{"CourseId":1,"CourseNo":"INFO101","CourseName":"Bsc Information Communication Technology","Duration":"4"},{"CourseId":2,"CourseNo":"INFO102","CourseName":"Bsc Computing","Duration":"3\/4"},{"CourseId":8,"CourseNo":"INFO103","CourseName":"Business and Finance","Duration":"3"},{"CourseId":9,"CourseNo":"INFO107","CourseName":"Mathematics","Duration":"4"}];