2011-10-11 2 views
0

RadScheduler에 문제가 있습니다. 삽입 양식을 열기 전에 가용성에 대한 더블 클릭 시간대의 유효성을 검사해야합니다. 나는 고급 삽입 양식을 사용하고 있습니다. 불행히도 OnAppointmentInserting이나 이와 비슷한 이벤트가 없습니다. OnClientAppointmentInserting 이벤트를 발견하고 유효성 검사에 사용할 수 있지만 유효성 검사가 올바르면 양식을 계속 삽입 할 수 없습니다. 내가 클라이언트 측 유효성 검사에 사용하는 코드 만 확인 후 삽입 폼을 표시하는 그 어떠한 방식으로 다음과 같습니다RadScheduler를 삽입하기 전에 약속을 확인하는 방법

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

답변

0

가 Telerik의 this Knowledge Base article에서 봐 주시기 바랍니다 것은 약속의 삽입을 방지하는 방법을 볼 수 있습니다. 자신의 경우에는 약속의 주제가 비어있는 경우에만 약속을 삽입 할 수 없습니다. 대신 자신의 유효성 검사를 사용할 수 있습니다.

관련 문제