2011-06-12 3 views
0

orderbyborder 링크 인 두 개의 열이 있습니다. 한 열을 클릭하면 다음과 같은 방식으로 attributeModifier를 추가하여 열의 색상을 변경했습니다.새로운 attributeModifier가 추가되면 이전 attributeModifier를 제거하는 방법은 무엇입니까?

잘 작동합니다. 하지만 두 번째 열을 클릭하면 첫 번째 열은 변경된 색으로 유지됩니다. 그러나 나는이 attributeModifier를 클릭해야하는 열만을 기대합니다!

답변

4

수정자를 변경하면 안됩니다.

트릭은 모델이 올바른 값을 반환하도록하는 것입니다. 그래서 그 대신 항상 같은 상수 값을 반환 new Model<String>("background-color:#80b6ed;")를 사용하여, 당신은 같은이있을 것이다 :

new Model<String>() { 
    @Override 
    public String getObject() { 
    if(columnName.equals(selectedColumn) { //or something along these lines, to check if the current column is the selected one 
     return "background-color:#80b6ed;"; 
    } 
    return "background-color:white;"; 
    } 
} 

물론 이것은 또한 '당신이 그들과 돈을 만들 때마다 열 속성 수정을 추가 할 수 있음을 의미 나중에 그들에 대해 걱정해야합니다.

+0

Thnx alot ... 나는이 아이디어를 구현합니다 .bt 당신의 대답은 나에게 .... thnx를 다시 얻는 방법을 제공합니다 ... – Samrat

0

원하는 것을 얻기위한 또 다른 방법은 자바 스크립트를 통해 선택한 줄에 CSS 클래스를 추가하는 것입니다 (이전 클래스에서 클래스 제거).

관련 문제