Javascript 从PHP结果追加JS.FullCalendar

Javascript 从PHP结果追加JS.FullCalendar,javascript,jquery,ajax,modal-dialog,fullcalendar,Javascript,Jquery,Ajax,Modal Dialog,Fullcalendar,我正在学习如何使用JS,我正在用PHP实现fullCalendar 到目前为止,我已经具备了基本的功能:从PHP+MySQL中提取/存储/更新。。。一切都好 现在的问题是,我想用从数据库中提取的PHP数据填充一个下拉菜单[Students],JS构建了一个模式,我认为应该使用AJAX,但我不知道如何 在当前代码下面,除了下拉起始点之外,没有添加任何内容,并附上图片。提前感谢您: /* on select */ CalendarApp.prototype.onSelect = functi

我正在学习如何使用JS,我正在用PHP实现fullCalendar

到目前为止,我已经具备了基本的功能:从PHP+MySQL中提取/存储/更新。。。一切都好

现在的问题是,我想用从数据库中提取的PHP数据填充一个下拉菜单[Students],JS构建了一个模式,我认为应该使用AJAX,但我不知道如何

在当前代码下面,除了下拉起始点之外,没有添加任何内容,并附上图片。提前感谢您:

    /* on select */
CalendarApp.prototype.onSelect = function (start, end, allDay) {
    var $this = this;
        $this.$modal.modal({
            backdrop: 'static'
        });
        var form = $("<form></form>");
        form.append("<div class='row'></div>");
        form.find(".row")
            .append("<div class='col-md-6'><div class='form-group'><label class='control-label'>Event Name</label><input class='form-control' placeholder='Insert Event Name' type='text' name='title'/></div></div>")
            .append("<div class='col-md-6'><div class='form-group'><label class='control-label'>Category</label><select class='form-control' name='category'></select></div></div>")
            .append("<div class='col-md-6'><div class='form-group'><label class='control-label'>Students</label><select class='form-control' name='students'></select></div></div>")
            .find("select[name='category']")
            .append("<option value='bg-danger'>Danger</option>")
            .append("<option value='bg-success'>Success</option>")
            .append("<option value='bg-purple'>Purple</option>")
            .append("<option value='bg-primary'>Primary</option>")
            .append("<option value='bg-pink'>Pink</option>")
            .append("<option value='bg-info'>Info</option>")
            .append("<option value='bg-warning'>Warning</option></div></div>");
        $this.$modal.find('.delete-event').hide().end().find('.save-event').show().end().find('.modal-body').empty().prepend(form).end().find('.save-event').unbind('click').click(function () {
            form.submit();
        });
        $this.$modal.find('form').on('submit', function () {
            var title = form.find("input[name='title']").val();
            var beginning = form.find("input[name='beginning']").val();
            var ending = form.find("input[name='ending']").val();
            var categoryClass = form.find("select[name='category'] option:checked").val();
            if (title !== null && title.length != 0) { 
                $this.$modal.modal('hide');
                var theStart = moment(start).format();
                var theEnd = moment(end).format();
                var theData = {
                    title, 
                    theStart, 
                    theEnd,
                    categoryClass
                };
                sendData('add', theData);
            }
            else{
                Swal.fire("Enter the Event Name!");
            }
            return false;
            
        });
        $this.$calendarObj.fullCalendar('unselect');
},
使用jQuery可以使用函数。此函数使http请求在完成时调用回调。有多种回调和设置它们的方法,我建议您查看文档。在本例中,我们使用done,它只有在请求成功时才会被调用。 为了避免在附加选项时插入字符串,我使用第二个参数来设置值和文本

变量形式=$; $body.appendform 形式。附加; form.find.row .学生; $.ajax{ url:path/to/students/endpoint, dataType:json,//假设您从php脚本返回json }.donefunction学生{ //假设学生是一组名字 var select=form.find'select[name=students]; 学生姓名{ 选择。追加${ 值:name, 文本:名称 } } } //因为这是一个示例,我实际上无法进行ajax调用 函数fakeajax响应学生{ var select=form.find'select[name=students]; 学生姓名{ 选择。追加${ 值:name, 文本:名称 } } } fakeAjaxResponse[ 学生, 学生B ]
谢谢你的解释,我今天会试一试,然后回来,再次感谢你!按照指示工作,今晚在你的名字上喝杯啤酒,我的朋友,保持安全!!!!