0
사용자가 가능한 한 많은 코스를 추가 할 수있는 기본 양식이 있습니다. 각 과정은 커리큘럼에 속해야합니다. 나는 이것을 knockout.js 프레임 워크 위에 구축하기로 결정했다. 커리큘럼 드롭 다운 메뉴 (self.curriculumList
)의 값을 하드 코딩 할 수있었습니다. 하지만 난 드롭 다운 메뉴를 채우기 위해 MySQL의 DB에서 값을 가져 오는 데 어려움을 겪고있다. 어떻게해야합니까? 당신이 성공 콜백의 데이터에 액세스하고 관찰 할 수있는 배열에 할당해야하므로 JSFIDDLE서버 값으로 드롭 다운 메뉴 채우기 - knockout.js
var initialData = [{
courseName: ""
}];/**/
var CourseModel = function (courses) {
var self = this;
self.courses = ko.observableArray(ko.utils.arrayMap(courses, function (course) {
return {
courseName: course.courseName,
selectedOptionValue : course.selectedOptionValue
};
}));
self.curriculumList = $.getJSON('functions/getCurriculum.php', function(data) {
data;
});
self.addCourse = function() {
self.courses.push({
courseName: "",
selectedOptionValue : ko.observable("Select One")
});
};
self.removeCourse = function (course) {
self.courses.remove(course);
};
self.save = function() {
self.lastSavedJson(JSON.stringify(ko.toJS(self.courses), null, 2));
};
self.lastSavedJson = ko.observable("");
};
ko.applyBindings(new CourseModel(initialData));
이 어디 아약스 호출입니다 ... asynchonous입니까? –
@raheelshan 나는'self.curriculumList = $ .getJSON..'을 추가했지만 이제는 드롭 다운 목록에 [object Object]가 표시됩니다. –