2010-05-10 49 views
1

我想爲jquery做一個mouseover,當鼠標懸停在某一行上時,我可以從該行獲取id並填充信息並顯示圖像。但是,我一直在努力嘗試這麼做最困難。從鼠標懸停的jqgrid獲取數據

這是我希望發生

就像在onSelectRow,我用下面的代碼

var ret = $('#list').jqGrid('getRowData', Id); 

我希望當我做了鼠標懸停使用獲得的數據。但是,我沒有看到這樣做的方法。我嘗試以下gridComplete

gridComplete: function() {'.jqgrow').mouseover(function(e) { 
var rowId = $('.jqgrow').parent(tr:first).attr('id'); 
alert("You rolled over " + rowId.Id); 
}); 
} 

下,但它只是給我的jqGrid的內部的錶行的IDE號碼,我從該行,而不是所需要的數據。

舉例來說,在我的數據我有身份證,名字,姓氏,全名,標題,SortID

我想目前我的HTML頁面的右側圖像時通過將鼠標懸停在某些行ID到HTML頁面,並通過數組查詢。如果我可以如何獲得數據集中的實際ID,我可以完成剩下的工作。

任何幫助將是可愛的。

我已經在底部給出了我的jqGrid的完整代碼以供參考。

jQuery("#list").jqGrid({ 
url: '/Providers/DynamicGridData/', 
datatype: 'json', 
mtype: 'GET', 
colNames: ['Id', 'LastName', 'FirstName', 'FullName', 'Title', 'Url', 'SortId'], 
colModel: [ 
{ name: 'Id', index: 'Id', width: 30, align: 'left', hidden: true }, 
{ name: 'LastName', index: 'LastName', width: 30, align: 'left', hidden: true }, 
{ name: 'FirstName', index: 'FirstName', width: 30, align: 'left', hidden: true }, 
{ name: 'FullName', index: 'FullName', width: 100, align: 'left' }, 
/*{ name: 'FirstName', index: 'FirstName', width: 100, align: 'left' },*/ 
{name: 'Title', index: 'Title', width: 200, align: 'left' }, 
{ name: 'Url', index: 'Url', width: 30, align: 'left', hidden: true }, 
{ name: 'SortId', index: 'SortId', width: 30, align: 'left', hidden: true}], 
pager: jQuery('#pager'), 
rowNum: 10, 
rowList: [5, 10, 20, 50], 
sortname: 'Id', 
scrollOffset: 0, 
width: '425', 
altRows: 'true', 
altClass: 'ui-priority-secondary', 
autowidth: 'true', 
height: '300', 
altRows: 'true', 
altClass: 'ui-priority-secondary', 
viewrecords: true, 
caption: 'Clinical Providers', 
onSelectRow: function() { 
var Id = $("#list").jqGrid('getGridParam', 'selrow'); 
if (Id) { 
var ret = $('#list').jqGrid('getRowData', Id); 
var url = ret.Url; 
url.split(' ').join(''); 
//alert("id=" + ret.Id + "FullName=" + ret.FullName + "..."); 
window.location = "/" + url; 
} 
else { alert("Please select a row"); } 
}, 
gridComplete: function() { 
$('.jqgrow').mouseover(function(e) { 
var rowId = $('.jqgrow'). 
alert("You rolled over " + rowId.Id); 
}); 
} 
}); 

回答

0

我很困惑 - 當你說:

var rowId = $('.jqgrow').parent(tr:first).attr('id'); 

這應該返回行的ID。然後,您可以將rowID傳遞給getRowData方法以檢索該行的其他數據。

3

我想這個代碼,並能正常工作:

gridComplete: function() { 
    $('.jqgrow').mouseover(function(e) { 
     var rowId = $(this).attr('id'); 
     alert('You rolled over ' + rowId); 
    }); 
} 
0

試試這個code..this代碼工作... 此代碼檢索的jqGrid行對象..

$('.jqgrow').mouseover(function(e) { 
var rowId = $(this).attr('id'); 
var dataFromTheRow = jQuery("#list").jqGrid('getRowData',rowId);// this is your jqgrid row object; 
alert('your jqgrid row object id = ' + dataFromTheRow.id); 
       });