我正在使用jQuery完整日历。单击按钮时,完整日历将发送发布请求。 在按钮上单击日历需要从文本框中获取值并从站点重新获取事件。
错误是指单击按钮时,会发送文本框中的空值并发送默认选择项值,而不是用户输入的新值。
如何解决这个问题。以下是代码
$('#search').click(function() {
$('#calendar').fullCalendar('refetchEvents');
});
$('#calendar').fullCalendar({
defaultView: 'agendaDay',
header: {
left: 'prev,next today',
center: 'title',
right: 'agendaDay'
},
cache: false,
eventSources: [
{
url: "http://" + window.location.host + "/Appointment/Appointments/",
type: 'POST',
data: {
doctor: $("input[name=Doctor]").val(), **//NULL VALUE IS SENT**
room: $('select[name=Room]').val() **//DEFAULT SELECT LIST ITEM VALUE SENT**
},
error: function() {
alert('there was an error while fetching events!');
},
success: function (dataQ) {
for (var i = 0; i < dataQ.length; i++) {
dataQ[i].start = moment(dataQ[i].start);
dataQ[i].end = moment(dataQ[i].end);
}
},
color: 'grey',
textColor: 'white'
}
]
});
答案 0 :(得分:1)
$("input[name=Doctor]").val()
会在您的网页加载时评估一次。这就是为什么你之后输入的内容不会被发送的原因。
您应该使用以下函数加载事件:http://fullcalendar.io/docs/event_data/events_function/