2014-09-22 34 views
0

在MVC應用程序,在視圖中,我創建多個單元格的表格,所有的枝條相同的CSS類,而我補充一點,彈出一個click事件打開窗戶。所以點擊一個單元格,打開一個模態彈出窗口。CSHTML,jQuery的,點擊母細胞做什麼,除非我點擊其他地方firsth

打開彈出式IUP

$('.EmployeeEvent').unbind('click').click(function() { 
    ... 
    var oEditEventWindow = $("#WndEditEvent").data("kendoWindow"); 

     oEditEventWindow.open().center(); 
     oEditEventWindow.refresh({ 
      url: "/EmployeeScheduler/EmployeeScheduler/GetEditEventViewModel", 
      data: { 
       ... 
      } 
     }); 

    oEditEventWindow.title(...); 
}); 

然後我就可以,要麼取消,關閉窗口,或者用它來輸入一些數據並提交,並在成功保存在應用程序的代碼/ db,根據操作和彈出窗口關閉刷新特定單元格的內容。

$("#btn-Cancel").click(function() { 
    $("#WndEditEvent").data("kendoWindow").close(); 
}); 

$("#btn-Add").click(function() { 
    ManageEvent(iSAVE); 
}); 

$("#btn-Modify").click(function() { 
    ManageEvent(iSAVE); 
}); 

的問題是,如果我彈出窗口和取消,實際上,我可以通過單擊單元格重新彈出並重復多次。如果我從彈出窗口提交(而不是取消),窗口關閉,重新單擊該單元格沒有任何作用(它不會重新彈出窗口!!!!)。實際上,我必須點擊其他地方,然後取消,以便能夠點擊初始單元格來工作。

function ManageEvent(iRequestType) { 
... 
    $.ajax({ 
    url: "/EmployeeScheduler/EmployeeScheduler/ManageEvent", 
    type: 'GET', 
    data: { 
     ... 
    }, 
    success: function (data) { 
     if (data == '-1') { 
      $('#GeneralError').show(); 
     ... 
     else { 

      // DO SOMETHING THEN CLOSE WINDOW 
      // Update the status panel (i.e. display and buttons) 

      $("#WndEditEvent").data("kendoWindow").close(); 

     } 
    } 
    }); 
} 

請幫助謝謝

回答

0

,我認爲你已經錯過了結合內部的document.ready事件。請嘗試以下代碼片段

$(document).ready(function(){ 
      $('.EmployeeEvent').unbind('click').click(function(){ 
       // some logic 
      }); 
}); 
+0

謝謝 - 實際上您指出了我的正確方向。我做了解綁並綁定在ajax調用後的關閉窗口位置,它的工作原理:-) – 2014-09-22 09:06:28

+0

歡迎,你可以通過點擊** Accept ** ... :)來實際地感謝我:) – Mayank 2014-09-22 09:10:05

相關問題