selli
133
2020-12-24 13:07:02 작성 2020-12-24 13:09:07 수정됨
2
155

제이쿼리/자바스크립트) 파라미터로 숫자 넘기려는데 못읽는것같아요ㅠㅠ


테이블이 하나 있고 각 컬럼별 검색기능을 제이쿼리로 구현중에 있습니다.

td:nth-child() 여기서 td:nth-child(3) 이런식으로 직접 숫자를 넣으면 원하는대로 잘 동작을 하는데요

index에 원하는 숫자값이 들어있고 타입도 number인데 이걸 넣으면 인식을 못하네요 ㅠㅠㅠ


다시말하면 td:nth-child(7) 이렇게 숫자를 넣으면 잘 동작하는데 

function keyevent(i) {
let textVal = $("#searchId" + i).val(); // 입력한 값을 textVal에 넣기
$('#gridTable > tbody > tr:nth-child(n+2)').hide(); // 테이블 내용 일단 지우기
let index = i+1;
let temp = $("#gridTable > tbody > tr > td:nth-child(7):contains('" + textVal + "')");
$(temp).parent().show();
}



아래처럼 하면 안됩니다 ㅠㅠ 

function keyevent(i) {
let textVal = $("#searchId" + i).val(); // 입력한 값을 textVal에 넣기
$('#gridTable > tbody > tr:nth-child(n+2)').hide(); // 테이블 내용 일단 지우기
let index = i+1;
let temp = $("#gridTable > tbody > tr > td:nth-child('" + index + "'):contains('" + textVal + "')");
$(temp).parent().show();
}


td:nth-child('" + index + "') 이것뿐만아니라 

td:nth-child(index) td:nth-child(' + index + ') 이것도 인식이 안됩니다.. 

에러메시지는 아래와같아요

(에러메시지: Uncaught Error: Syntax error, unrecognized expression: :nth-child)



정말 프론트쪽은 어렵네요 .. 해결책좀 주세요고수님들


 


0
  • 답변 2

  • HJOW
    1k
    2020-12-24 13:16:27 작성 2020-12-24 13:17:07 수정됨
    let temp = $("#gridTable > tbody > tr > td:nth-child('" + index + "'):contains('" + textVal + "')");


    let temp = $("#gridTable > tbody > tr > td:nth-child(" + index + "):contains('" + textVal + "')");

    으로 바꿔보세요

    (nth-child 매개변수쪽에서 홑따옴표 제거)

  • selli
    133
    2020-12-24 13:23:02 작성 2020-12-24 13:23:34 수정됨

     HJOW

    헉 .. 됩니다 ,, 감사합니다 ㅜㅜ

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