Javascript 从PHP结果追加JS.FullCalendar
我正在学习如何使用JS,我正在用PHP实现fullCalendar 到目前为止,我已经具备了基本的功能:从PHP+MySQL中提取/存储/更新。。。一切都好 现在的问题是,我想用从数据库中提取的PHP数据填充一个下拉菜单[Students],JS构建了一个模式,我认为应该使用AJAX,但我不知道如何 在当前代码下面,除了下拉起始点之外,没有添加任何内容,并附上图片。提前感谢您: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
/* 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
]
谢谢你的解释,我今天会试一试,然后回来,再次感谢你!按照指示工作,今晚在你的名字上喝杯啤酒,我的朋友,保持安全!!!!