如何在RadScheduler插入之前验证约会

时间:2011-10-11 16:17:01

标签: c# asp.net radscheduler

我的RadScheduler有问题。我需要在插入表单打开之前验证双击时间段的可用性。我使用高级插入表单。不幸的是它没有OnAppointmentInserting或像这样的事件。我找到了OnClientAppointmentInserting事件,我可以使用它进行验证,但如果验证正确,我无法继续插入表单。遵循我用于客户端验证的代码,但验证后无法显示插入表单:

function beforeInserting(s, e) {
        var url = '';
        var requestUrl = window.location.href.toLowerCase();
        if (requestUrl.indexOf('/views/') != -1)
            url = requestUrl.substring(0, requestUrl.indexOf('/views/')) + '/jobservice.svc/IsTimeAvailable?userId=0';
        e.set_cancel(true);
        var app = e.get_targetSlot();

        $.ajax({
            url: url,
            accepts: 'application/json, text/javascript, */*',
            cache: false,
            success: function (r) {
                if (r != '') {
                    alert(r);
                    return;
                }
                else {
                    var scheduler = $find("<%= rdJobScheduler.ClientID %>");
                    var newApp = new Telerik.Web.UI.SchedulerAppointment();

                    newApp.set_start(app.get_startTime());
                    newApp.set_end(app.get_endTime());

                    // This is not working properly it just send OnInserted event to server
                    // scheduler.insertAppointment(newApp);
                }
            },
            error: function (err, text, xhr) {
                alert(text);
            }
        });
    }

1 个答案:

答案 0 :(得分:0)

请查看Telerik的this Knowledge Base article,了解如何防止插入预约。在他们的情况下,只有约会的主题是空的 - 您不能插入约会。您可以使用自己的验证。