Firefox、jQuery和jqgrid中的文本装饰问题
我发布了第五个Firefox不显示样式“文本装饰:线通过” 我正在使用jqGrid显示药物列表。如果药物无效,则必须交叉使用。在我的afterInsertRow事件中,我执行以下操作:Firefox、jQuery和jqgrid中的文本装饰问题,firefox,jqgrid,styles,word-wrap,Firefox,Jqgrid,Styles,Word Wrap,我发布了第五个Firefox不显示样式“文本装饰:线通过” 我正在使用jqGrid显示药物列表。如果药物无效,则必须交叉使用。在我的afterInsertRow事件中,我执行以下操作: $('#' + rowid).css({ 'text-decoration': 'line-through', 'color': 'red' }) 它适用于IE和Chrome,但Firefox只显示红色文本,不越界 当我查看firebug输出时,我可以看到元素具有包括文本装饰在内的样式定义,但它只是没有显示我
$('#' + rowid).css({ 'text-decoration': 'line-through', 'color': 'red' })
它适用于IE和Chrome,但Firefox只显示红色文本,不越界
当我查看firebug输出时,我可以看到
元素具有包括文本装饰在内的样式定义,但它只是没有显示我需要的方式。如果您将代码修改为
$('#' + ids[1] + " > td").css(
{ 'text-decoration': 'line-through', 'color': 'red' });
如果威尔有用的话。如果使用rownumbers:true
并且不希望删除行号,则可以使用
$('#' + ids[1] + " > td:not(.jqgrid-rownum)").css(
{ 'text-decoration': 'line-through', 'color': 'red' });
还有一个小建议:使用gridview:true
更快地填充jqGrid。在此模式下,jqGrid将整个表包含作为siring填充,并插入一个jqrey.append
操作。afterInsertRow
事件的使用违反了规则,因为每一行都将插入一个jQurey.append
操作,然后将调用afterInsertRow
。所以我的建议是:使用gridview:true
,不要使用afterInsertRow
。要更改css,请使用loadComplete
或gridComplete
,例如:
jQuery('#list').jqGrid({
//...
loadComplete: function() {
var ids = jQuery('#list').getDataIDs();
for (var i = 0; i < ids.length; i++) {
$('#' + ids[i] + ' > td:not(.jqgrid-rownum)').css(
{ 'text-decoration': 'line-through', 'color': 'red' });
}
}
// ...
});
jQuery('#list').jqGrid({
//...
loadComplete:function(){
var id=jQuery('#list').getDataId();
对于(变量i=0;itd:not(.jqgrid rownum)”.css(
{‘文本装饰’:‘线穿过’,‘颜色’:‘红色’});
}
}
// ...
});
如果您将代码修改为
$('#' + ids[1] + " > td").css(
{ 'text-decoration': 'line-through', 'color': 'red' });
如果威尔有用的话。如果使用rownumbers:true
并且不希望删除行号,则可以使用
$('#' + ids[1] + " > td:not(.jqgrid-rownum)").css(
{ 'text-decoration': 'line-through', 'color': 'red' });
还有一个小建议:使用gridview:true
更快地填充jqGrid。在此模式下,jqGrid将整个表包含作为siring填充,并插入一个jqrey.append
操作。afterInsertRow
事件的使用违反了规则,因为每一行都将插入一个jQurey.append
操作,然后将调用afterInsertRow
。所以我的建议是:使用gridview:true
,不要使用afterInsertRow
。要更改css,请使用loadComplete
或gridComplete
,例如:
jQuery('#list').jqGrid({
//...
loadComplete: function() {
var ids = jQuery('#list').getDataIDs();
for (var i = 0; i < ids.length; i++) {
$('#' + ids[i] + ' > td:not(.jqgrid-rownum)').css(
{ 'text-decoration': 'line-through', 'color': 'red' });
}
}
// ...
});
jQuery('#list').jqGrid({
//...
loadComplete:function(){
var id=jQuery('#list').getDataId();
对于(变量i=0;itd:not(.jqgrid rownum)”.css(
{‘文本装饰’:‘线穿过’,‘颜色’:‘红色’});
}
}
// ...
});
感谢您的详细回复。我之所以使用afterInsertRow,是因为我的结果集不太大,它最多只能保存20-25条记录,所以我不必担心加载速度。谢谢您的详细回复。我之所以使用afterInsertRow,是因为我的结果集并不是很大,它最多只能保存20-25条记录,所以我不必担心加载速度。