2011-01-23 4 views
0

stlye를 수정하거나 jqGrid의 특정 행에 클래스를 추가 할 수 있습니까? 나는 송장을 보여주는 표를 가지고있다. 인보이스 상태 (열 중 하나)가 VOID로 표시되면 행의 텍스트가 빨간색으로 표시됩니다. 나는 afterInsertRow 이벤트를보고 데이터를 확인할 수 있지만 실제 '행'에 도착할 수 있는지는 확실하지 않습니다. 나는 그것이 rowelem (마지막 매개 변수)이 무엇인지 생각했다. 사전에개별 jqGrid 행에 대한 스타일 수정 또는 클래스 추가

감사 로이드

당신은 loadComplete 이벤트 핸들러 대신 afterInsertRow의 내부 송장 상태의 값을 테스트 할 수 있습니다

답변

2

:

var grid = $("#list"); 
grid.jqGrid({ 
    // other jqGrid parameters 
    loadComplete: function() { 
     var ids = grid.jqGrid('getDataIDs'); 
     for (var i=0;i<ids.length;i++) { 
      var id=ids[i]; 
      if (grid.jqGrid('getCell',id,'invoiceStatus') === 'VOID') { 
       $('#' + id, grid[0]).css ({color: 'red'}); 
      } 
     } 
    } 
}); 

모든 라인이 가진 '테스트'텍스트의 표시 작은 데모 '고객'열에서 here이 (가) 볼 수 있습니다.

0

Oleg의 답변에 추가로 꽤 많은 질문에 답변했습니다. 나는 계속해서 '공허한 (Void)'텍스트 텍스트 만 빨간색으로 표시해야했습니다.

$('#' + id, grid[0]).css ({color: 'red'}); 
+0

내가 먼저 예를 사용 썼다는 올렉의 예제 코드의 라인을 대체

if ($list.jqGrid('getCell',id,'InvoiceStatus') === 'Void') { $list.jqGrid('setCell',id,'InvoiceStatus','',{color: 'red'}); } 

: 나는 사람이 게시물을 가로 질러 오는 경우이 작업을 수행하는 방법에 대한 코드를 게시 할 줄 알았는데 너를 좋아해. 귀하의 질문을 다시 쓴 후, "행의 텍스트를 빨간색으로 표시"라고 쓰고, 전체 줄을 빨간색으로 표시하도록 내 대답을 변경했습니다. 따라서 다른 독자들에게는 두 가지 버전이 모두 포함되어있는 것이 좋습니다. – Oleg

관련 문제