第六章 其他功能第六章 其他功能\6-4 Row的動態權限

6-4 Row的動態權限

在資料的實際編輯時,程式會被要求,某些資料在符合條件時,可以被編輯,否則不可編輯。這個功能,我們可以根據js的程式通過動態的方法來實現。這個例子我們來做一個在登入用戶為001時,當運費(Freight)大於100時,資料才可以被編輯。

Step1>        首先在GridOnUpdate的屬性中寫入動態js的程式名稱。

Step2>        接著,我們就在source中輸入如下的方法。這裡要說明,自定義方法有一個傳入的參數,它用於記錄當前被編輯的這筆資料;回傳一個bool的值,true表示可操作,false表示不可操作。

function updateRow(rowData) {

            var cookies = document.cookie.split(';');

            var curruser = "";

            for (var i = 0; i < cookies.length; i++) {

                var cookie = cookies[i];

                var temp = cookie.split('=');

                if (temp[0] == " username") {

                    curruser = temp[1];

                }

            }

            if (rowData.Freight > 100) {

                if (curruser == "001") {

                    return true;

                }

                return false;

            }

            return true;        }

這樣,我們在以002登入畫面時,超過100的資料就無法被用戶所編輯了。


 

Top of Page