jqgrid 單元格title顯示其他數據

最近客戶要求在單元格里面顯示其他信息,並不顯示單元格的信息,這需求讓我頭疼了一會兒,我其實沒有做過這樣的想到了用ajax做就上網去查閱資料,找到的沒有和需求一樣的就借鑑了一下他們的思路,廢話不說兒先看效果:

就是鼠標放在國內海外這個單元格的時候顯示的數據不是它本身,顯示其他數據,前臺代碼:

 function formatShowHide(cellValue, options, rowobject) {
        var id = rowobject[1];
        $.ajax({
            url: '/MyTask/MyTask/ShowData?id=' + id + '',
            dataType: 'json',
            type: 'post',
            data: {},
            success: function (data) {
                var titledata = '流程對接人:' + data.Name + ';電話分機:' + data.Phone + ';組長:' + data.GropuBoss + ';電話分機:' + data.EXT;
                $(".autotip_" + data.id + "").attr("title", titledata);
            }
        });
        if (rowobject[15] != "" || rowobject[15] != null) {
            return "<span  title='" + rowobject[15] + "' class='autotip_" + id + "'>" + rowobject[15] + "</span>";
        } else {
            return "<span  title='" + rowobject[15] + "' class='autotip_" + id + "'>" + rowobject[15] + "</span>";
        }
    }

這是前臺代碼,需要注意的是在span顯示的時候要寫個class+此行的ID ,如果定義ID的話在ajax的success獲取不到數據,自己去體會吧,後臺的代碼也沒有什麼難點就是獲取到數據賦值罷了:

  public class tempclass
        {
            public string Name { get; set; }
            public string Phone { get; set; }
            public string GropuBoss { get; set; }
            public string EXT { get; set; }
            public string id { get; set; }
          
        }
        public JsonResult ShowData(string id)
        {
            tempclass model = new tempclass();
            model.id=id;
            model.Name ="Name";
            model.Phone="Phone";
            model.GropuBoss="GropuBoss";
            model.EXT="EXT"; 
            return Json(model,JsonRequestBehavior.AllowGet);
        }

在使用jqgrid的時候要調用前臺的方法,我使用的jqgrid比較舊了可能和現在最新版本有點區別,調用的方法:

 ordersGrid.Columns.Find(c => c.DataField == "TaskLungtinAreaName").Formatter = new CustomFormatter { FormatFunction = "formatShowHide" };

        


初次寫技術性的,請大佬們多多指教。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章