測試文字功能,小工具,標題

記錄很重要,不然會浪費很多時間在找以前的記憶

一個人的氣度,決定他未來的高度。

2016年4月24日 星期日

ASP.NET 叫用前台的OnClientClick事件 也能叫用2個function

ASP.NET 叫用前台的OnClientClick事件

遇見一個狀況,當Button按下去前,想先檢查checkbox選取的資料,但又要先判斷是否有選取資料這樣,所以就將這些判斷的部份寫在OnClientClick

//javascript

<script type="text/javascript">

        // checkbox全選,這個不是重點
        function SelectAllCheckboxes(spanChk) {
        elm = document.forms[0];
        for (i = 0; i <= elm.length - 1; i++) {
            if (elm[i].type == "checkbox" && elm[i].id != spanChk.id) {
                if (elm.elements[i].checked != spanChk.checked)
                    elm.elements[i].click();
                }
            }
       }     

       function CheckAll() {
           elm = document.forms[0];
           var j = 0;
           for (i = 0; i <= elm.length - 1; i++) {
               if (elm[i].type == "checkbox" && elm[i].id != "GridView1_ckball") {
                   if (elm.elements[i].checked)
                       j++;
               }
           }
           if (j != 0) {
               return confirm("要匯出 " + j + " 筆 資料?")
           }
           else {
               alert("請勾選資料!!!"); //myFunction(); //這邊也能放執行另一個 function
               return false;
           }     
       }

       //測試用的,不是很重要
        function myFunction() {
            alert("123");
        }

    </script>

//Button寫成這樣
<asp:Button ID="Button2" runat="server" Text="匯出勾選" CssClass="btn-primary" OnClientClick="if (!CheckAll()) return false;" onclick="Button2_Click" Enabled="False"/>               

沒有留言:

張貼留言