我想阻止jqGrid元素上的onClick选择。
怎么可能?
以下是您的示例
转到此链接http://www.ok-soft-gmbh.com/jqGrid/UnobtrusiveLinksNew.htm
在此页面中,如果我点击 Michael Schumacher 或 Lukas Podolski 相关行将被选为黄色。另一方面,如果我点击公式1 或足球相关的行没有选择。我想在jqGrid中的一个元素上得到这种行为。
更新 这是我的代码
$(document).ready(function()
{
$(function()
{
$("#list").jqGrid
({
url:'example.php',
datatype: 'xml',
mtype: 'GET',
colNames:['RABR member in Circle','Date Sent','Status','Action'],
colModel :
[
{name:'tax', index:'tax', width:85, align:'left',sortable:false,formatter:format_row},
{name:'invdate', index:'invdate', width:60, align:'center',sortable:false,formatter:format_date},
{name:'amount', index:'amount', width:35, align:'center', sortable:false,formatter:format_status},
{name:'amount', index:'amount', width:55, align:'left',title:false, sortable:false,formatter:format_rate_me,beforeSelectRow: function(rowid, e) { return false; },
},
],
pager: '#pager',
rowNum:10,
rowList:[10,20,30],
viewrecords: true,
multiselect: true,
altclass:'myAltRowClass',
altRows:true,
width:624,
height:'auto' }).navGrid('#pager',{edit:false,add:false,del:false});
}) ;
function format_row(cellValue, options, rowObject)
{
var split_result = cellValue.split("+");
var show_result= "<img src='images1/" + split_result[0] + "'/><b id='pro_name'>"+ split_result[1] + "</b></br><b id='e_add'>" + split_result[2]+"</b>";
return show_result;
}
function format_date(cellValue, options, rowObject)
{
var date = "<div class='date'>" + cellValue + "</div>";
return date;
}
function format_status(cellValue, options, rowObject)
{
var status_image = "<img src='images/" + cellValue + ".jpg' />";
return status_image;
}
function format_rate_me(cellValue, options, rowObject)
{
var optoins = "<div class='rate_me_text'>" + cellValue + "<div class='star_div'></div><div class='down_arrow'></div> <div class='options'><ul><li class='add_me'><a href='#'>Add as a friend</a></li><li class='view_circle'><a href='#'>View Circle Members(23)</a></li><li class='send_msg'><a href='#'>Send messages</a></li><li class='add_to_watch'><a href='#'>Add to watch list</a></li><li class='gifting'><a href='#'>Give a gift</a></li><li class='remove'><a href='#'>Remove from Circle</a></li><li class='block'><a href='#'>Block</a></li><li class='report'><a href='#'>Report abuse</a></li></ul></div></div>";
return optoins;
}
});
我想在点击.down_arrow类时避免选择。
感谢回复
更新
“@ Oleg”
最后我做到了。
这是代码
altclass:'myAltRowClass',
altRows:true,
beforeSelectRow:
function(rowid, e)
{
var iCol = $.jgrid.getCellIndex(e.target);
if (iCol >=4)
{
return false;
}
else
{
return true;
}
},
width:624,
感谢您的回复
答案 0 :(得分:2)
要阻止选择行,您可以使用beforeSelectRow事件处理程序。如果事件处理程序返回false,则将阻止行选择。您可以检查e.target
,它将是用户点击的<td>
元素或其子元素(如<a>
中的<td>
元素)。