復選框的單選,修改數據時的回顯(默認選中)處理方法


復選框的單選功能,在復選框的值改變事件上觸發以下代碼

 1 Model.prototype.checkbox6Change = function(event) {
 2         // 單選信息
 3         var data = this.comp("projectPerson");
 4         // 參數列表
 5         var rows = data.getCurrentRow();//當前數據對象
 6         var newId = data.getValue("fPostWriteID", rows);//代表當前(后一次)選擇時數據的id
 7         data.refreshData();//將數據模型中存儲的代表復選框的臨時數據通過刷新全部清掉
 8         data.each(function(parmas) {
 9             //獲取到數據模型中每一條數據的id
10             var sID = data.getValue("fPostWriteID", parmas.row);
11             //當id相等的時候將這條數據的復選框標識狀態設置為true代表已經選擇
12             if (newId == sID) {
13                 data.setValue("useStatus", true, parmas.row);
14             }
15         });
16         /*每次選擇復選框的時候(復選框值變化事件)觸發這個事件首先先獲取到第二次點擊行的數據idA,
17         true表示選中,false表示未選中
18         然后將所有的數據通過刷新狀態設置為未選擇,再通過遍歷數據模型將id為A的數據狀態設置為選擇*/
19     };

修改數據的時候回顯,當點擊選擇人員(其它)時候跳轉到另外一個頁面,將數據中已經選擇的人員(其它)的信息傳遞到另外一個頁面,

將選擇頁面的數據進行數據遍歷,通過對比id將id相等的數據選中標識符設置未true達到回顯的目的(在這里要確保當前頁遍歷的是所有人員選擇域的數據)

// 選擇抄送人
    Model.prototype.row12Click = function(event) {//選擇人選的觸發事件按鈕
        var itemScoreData = this.comp("itemScoreData");
        var data = this.comp("projectPerson");
        // 參數列表
        var N_Nam = itemScoreData.getValue("transcribe_person_id");
        data.refreshData();//將數據的范圍通過刷新設置為整個數據有效域
        // 通過遍歷比較數據將選中標識符"useStatus"設置為true
        data.each(function(parmas) {
            var Na = data.getValue("fPostWriteId", parmas.row);
            if (N_Nam == undefined || N_Nam == null || N_Nam == '') {
                          //避免數據未定義,from表單驗證出問題時報錯
            } else {
                if (N_Nam.indexOf(Na) != -1) {//
                    data.setValue("useStatus", true, parmas.row);
                }
            }
        });
        this.comp("list8").refresh();// 將選擇人員頁面的循環組件刷新
              //跳轉到自己的選擇界面
    };

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM