I want Conditionaly change style of td in jqGrid, i tried lots of example but not worked, i think i am doing something wrong, please view my code and help me to find out correct code.
My Code is
$(function () {
$("#dataGrid").jqGrid({
url: 'client.aspx/load_Conversation',
datatype: 'json',
mtype: 'POST',
serializeGridData: function (postData) {
return JSON.stringify(postData);
},
ajaxGridOptions: { contentType: "application/json" },
loadonce: false,
reloadGridOptions: { fromServer: true },
colNames: ['Conversation', 'adminStatus'],
colModel: [{ name: 'Conversation', index: 'message', width: 245 }, { name: 'adminStatus', index: 'isAdmin' }, ],
gridComplete: function () {
var ids = jQuery("#dataGrid").jqGrid('getDataIDs');
for (var i = 0; i < ids.length; i++) {
var status = jQuery("#dataGrid").jqGrid("getCell", ids[i], 'adminStatus');
if (status == "False") {
$j('#' + ids[i]).removeClass("ui-widget-content");
$j('#' + ids[i]).addClass("ChangeStyle");
}
}
},
viewrecords: true,
gridview: true,
jsonReader: {
records: function (obj) { return obj.d.length },
root: function (obj) { return obj.d },
repeatitems: false,
caption: 'Live chat with us'
}
});
$("#dataGrid").hideCol("adminStatus");
$("#dataGrid").jqGrid('setGridHeight', 240);
});
My Code behind is
public static List<Dictionary<string, object>> load_Conversation()
{
WebService wb= new WebService();
DataTable dt = wb.Get();
System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>();
Dictionary<string, object> row;
foreach (DataRow dr in dt.Rows)
{
row = new Dictionary<string, object>();
row.Add("Conversation", dr["messgae"]);
row.Add("adminStatus", dr["isAdmin"]);
rows.Add(row);
}
return rows;
}