2011-08-05 94 views
0

我在一個模板字段列中有一個自動回覆複選框,我需要autopostback進行計數,驗證並在服務器端同步模型,然後無法關閉autopostback 。
我不能使用Ajax,因爲它的項目限制和無能爲力。
我需要凍結每個事件觸發的所有頁面,以避免用戶點擊另一個複選框,直到上一個回發完成並避免用戶在回發之間觸發其他事件。
Im sory不張貼鏈接到jsfiddler,但不能模擬asp.net postback那裏。
進出口使用的腳本元素中的folowind jQuery的,這個腳本元素是AAT頭頂部的元素:當用戶點擊時凍結頁面中的所有頁面

<head id="Head2" runat="server"> 
    <title></title> 
    <script type="text/javascript" src="../../scripts/jquery-1.6.2.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       $(':checkbox').parent().click(function (event) {     
        alert(event.target.id);  // <<<<<< dont work if removed !!! 
        $(document).find('*') 
          .attr('disabled', 'disabled') 
          .removeAttr('href') 
          .css('color', 'grey'); 
        return true; 

       }); 
      }); 
     </script> 
</head> 
<body> 

達到使其在正確的方式,我需要把警報上述評價工作,該警報是沒用的對我和惱人的用戶,但如果刪除回發不開火,它看起來像頁面重新加載和網格加載和所有形式乾淨,就像第一篇文章。 爲什麼不能刪除此警報?

回答

0

不要禁用元素,把所有內容放在前面,就像一個「加載...」格。請求完成時隱藏元素。

1

爲什麼不在整個頁面上顯示一個透明的div,直到操作完成,然後在其完成後隱藏它?

$(document).ready(function() { 
       $(':checkbox').parent().click(function (event) {     
        //Show a transparent div 
        $("<div style='position:absolute' />") 
        .height($(document.body).height()) 
        .width($(document.body).width()) 
        .css("opacity", "0.5"); 
        .appendTo(document.body); 


       }); 
      }); 
+0

我建議給用戶一個機會,在你的進程失敗的情況下「關閉」透明的div。如果經過給定秒數,您可以使用setTimeout來顯示關閉按鈕。 –

+0

是的,如果進程失敗,我們應該關閉這個div。 – ShankarSangoli