복붙노트

[JQUERY] 있는 jqGrid 사용자 정의 형식은 addClass 실패

JQUERY

있는 jqGrid 사용자 정의 형식은 addClass 실패

해결법


  1. 1.당신은 사용자 정의 포맷터의 사용의 전형적인 오류를했다. 이 그리드는 문자열로 생성됩니다 포함 된 경우있는 jqGrid 최고의 성능을한다는 것을 이해하는 것이 중요하다. 경우에있는 gridview : 사실은 당신에게 성능을 제공합니다. 사용자 정의 포맷터는 DOM 요소입니다 아무 매개 변수가없는, 그래서 진정한 모드 당신은 $ (엘) .addClass ( "실패") 등의 작업을 사용할 수 있도록; 모든 사용자 정의 포맷터가있는 gridview에서 작동합니다

    당신은 사용자 정의 포맷터의 사용의 전형적인 오류를했다. 이 그리드는 문자열로 생성됩니다 포함 된 경우있는 jqGrid 최고의 성능을한다는 것을 이해하는 것이 중요하다. 경우에있는 gridview : 사실은 당신에게 성능을 제공합니다. 사용자 정의 포맷터는 DOM 요소입니다 아무 매개 변수가없는, 그래서 진정한 모드 당신은 $ (엘) .addClass ( "실패") 등의 작업을 사용할 수 있도록; 모든 사용자 정의 포맷터가있는 gridview에서 작동합니다

    오래된 답변에서는이 문제가 해결 될 수있는 방법을 찾을 수 있습니다 (여기와 여기 참조),하지만 난 당신이있는 jqGrid 4.0.0의 새로운 기능을 사용하는 것이 좋습니다 것입니다 : cellattr 옵션을 선택합니다. undefrstanding의 경우 : 사용자 정의 포맷터의 목적은 예를 들어, 클래스와 같은 일부 HTML 속성을 추가 할 수 없습니다. DD.MM.YYYY (독일어 스타일)와 같은 지역화 된 형태로 YYYY-MM-DD 같은 몇 가지 보편적 인 날짜 형식을 변환하는 예를 사용해야합니다. 당신이 칼럼의 형식을 변경하려면,하지만하지 않으려는 경우에만 (귀하의 경우처럼) 스타일 클래스 (툴팁에 사용) 제목과 같은 몇 가지 속성을 추가하는 등 새로운 cellattr 옵션을 당신이 필요로하는 것입니다.

    당신은 당신이 정의 할 수 있습니다 경우

    cellattr: function(rowId, cellValue, rawObject, cm, rdata) {
        if (cellValue==0) {
            return ' class="Fail"';
        }
    }
    

    여기에 작은 데모를 참조하십시오

    데모에서 나는 '청산'체크 박스에 세트입니다 '클라이언트'열의 모든 셀에 클래스 UI 상태 오류 및 UI 상태 오류 텍스트를 추가했다.

  2. from https://stackoverflow.com/questions/6048378/jqgrid-custom-format-fails-on-addclass by cc-by-sa and MIT license