0

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);
            }
        });
    }
4

1 に答える 1

0

予定の挿入を防ぐ方法については、Telerik のこのナレッジベースの記事を参照してください。その場合、予定の件名が空の場合のみ - 予定を挿入することはできません。代わりに独自の検証を使用できます。

于 2012-01-07T09:53:40.577 に答える