리얼로다가코린이
407
2021-08-24 14:19:48
4
146

jquery 관련 질문입니다.


제가 jquery를 이용해서 셀 병합을 동적으로 하고싶은데 방향조차 못잡고 있어서 어떤 방법으로 진행하면 좋을지 설명이나 구글링 방향만 잡아주시면 감사드리겠습니다.


var rkqt = [
	<!-- LOOP START 'list' -->
	{{list.year_cnt}},
	<!-- LOOP END 'list' -->
	];

프레임워크를 이용해서 루프를 돌려서 db에 있는 값을  출력합니다. 


배열은 이렇게 나오는데 2020년은 같은 colspan으로 2021년은 같은 colspan으로 묶어주고싶은데 도와주시면 감사드리겠습니다.

0
  • 답변 4

  • spoon
    2k
    2021-08-24 14:31:06

    구글링보다는 기능 구현의 사고적인 문제같습니다


    2020의 개수를 세서 colspan하고 2021의 개수를 세서 colspan해야되는건가요?


    보니까 정렬해서 나오는것같은데 첫번째 수를 뽑아서 같은거면 개수를 세고 다른걸 만나면 colspan하고 새로 개수를 세고 colspan하고 이런식으로 만들면 되지않을까 싶습니다

  • web.
    914
    2021-08-24 14:34:02 작성 2021-08-24 14:41:18 수정됨

    저 같은 경우엔 DB에서 조회해서 가져옵니다.

    다른분들은 어떻게 할지 궁금하네요.



    =========

    예시 

    WITH a AS

    (SELECT '2020'        AS year

    FROM    dual

    union all

    SELECT '2020'        AS year

    FROM    dual union all

    SELECT '2020'        AS year

    FROM    dual union all

    SELECT '2020'        AS year

    FROM    dual union all

    SELECT '2020'        AS year

    FROM    dual union all

    SELECT '2020'        AS year

    FROM    dual union all

    SELECT '2021'        AS year

    FROM    dual union all

    SELECT '2021'        AS year

    FROM    dual union all

    SELECT '2021'        AS year

    FROM    dual union all

    SELECT '2021'        AS year


    )

    SELECT year,count(*) over(partition by year) b 

    FROM   a;


    결과


    yearb
    20206
    20206
    20206
    20206
    20206
    20206
    20214
    20214
    20214
    20214

     

    2020년 개수는 6개가 되니 6개를 묶어주면 되겠네요. 


    계산식이 필요하다면 필요한 값들을 대부분

    함수를 통해 값을 조회 해오고

    사용자 단에서 계산해요 


    근데 이런식으로 하니 나중엔 계산식 때문에 소스가 더러워 지더군요...


  • 리얼로다가코린이
    407
    2021-08-24 15:10:11

    spoon


    갯수를 세는건 무엇을입력하면 갯수를 셀수있나요??

  • web.
    914
    2021-08-24 15:28:06

    갯수 세는게 for 문돌리면서

    var cnt=0;

    for(var i=0; i<rkqt.length; i++){

         if ( rkqt[i] == rkqt[i+1] ) { 

            cnt++;    

         } 

    }

    td.attr(colspan, cnt);

    단순하게 그냥 배열 앞뒤 비교하면서 +1씩 증가라하는 소리 같아요.


  • 로그인을 하시면 답변을 등록할 수 있습니다.