동적으로 채워지는 테이블이 있습니다.
기본 테이블에는 3 개의 <tbody>
섹션이 있고 각 섹션에는 행이 있습니다.
각 행에는 체크 박스가 있습니다.
내가하고 싶은 것은 <tbody>
ID 와 일치하는 jquery 선택기를 사용하는 것 입니다. id도 동적으로 생성되므로 상수 값이 아니라 변수를 사용합니다.
내가 사용하려는 jquery는 다음과 같습니다.
$(":input[id$='_ErrorCheckbox']").click(function () {
var wbId = $(this).attr('id').split("_")[0].toString().trim();
$('tbody#' + wbId + ' _ErrorVisits tr td input[type="checkbox"]').prop('checked', $(this).prop('checked'));
});
나는 또한이 문을 사용하여 행을 잡으려고 시도했지만 <tbody>
작동하지 않았습니다 (알 수없는 구문 오류가 발생했습니다).
$('tbody[id$=' + wbId + ' _ErrorVisits] tr td input[type="checkbox"]').prop('checked', $(this).prop('checked'));
위의 첫 번째 방법은 오류를 발생시키지 않고 아무것도 선택하지 않습니다.
jquery 선택기를 <tbody>
사용하여 ID를 사용하여 특정 요소 를 가져 오는 올바른 방법은 무엇입니까 ?
편집 : 다음은 html 테이블 출력입니다.
<table id="workbookTable_25116" cellpadding="10">
<thead>
<tr>
<th><input type="checkbox" id="25116 _SelectAllCheckbox"></th><th>Visit Timepoint</th><th>Visit Information</th><th>Notifications/Errors</th><th>Preview SQC Analysis</th>
</tr>
</thead>
<tbody id="25116 _ErrorVisits">
<tr><td></td><td></td><td></td><td></td></tr>
<tr><td><input type="checkbox" id="25116 _ErrorCheckbox"></td><td><b>Visits in Error</b></td><td></td><td></td></tr><tr style="background-color: red;"><td><input type="checkbox" id="9be44178-7273-4057-9607-acb135114b39 _25116 _Checkbox" name="visit_cb"></td><td>Week 8</td><td>1008-001, Week 8, 14005_MRI_Femur v1.0</td><td>This visit has a task in Error status!</td><td><input type="button" id="9be44178-7273-4057-9607-acb135114b39 _25116 _ResetTaskButton" value="Reset Task"></td></tr><tr style="background-color: red;"><td><input type="checkbox" id="367e7f6a-ec3a-476f-a1e3-b3eecf18db8b _25116 _Checkbox" name="visit_cb"></td><td>Week 16</td><td>1008-001, Week 16, 14005_MRI_Femur v1.0</td><td>This visit has a task in Error status!</td><td><input type="button" id="367e7f6a-ec3a-476f-a1e3-b3eecf18db8b _25116 _ResetTaskButton" value="Reset Task"></td></tr>
</tbody>
<tbody id="25116 _NotPreviouslySQCvisits">
<tr><td></td><td></td><td></td><td></td></tr>
<tr><td><input type="checkbox" id="25116 _NotSQCCheckbox"></td><td><b>First Time SQC Visits</b></td><td></td><td></td></tr><tr style="background-color: yellow;"><td><input type="checkbox" id="d38bc66a-561e-4a12-9d95-4979eb3e9b9b _25116 _Checkbox" name="visit_cb"></td><td>Week 4</td><td>1008-001, Week 4, 14005_MRI_Femur v1.0</td><td></td><td><input type="button" id="d38bc66a-561e-4a12-9d95-4979eb3e9b9b _25116 _PreviewButton" value="SQC Analysis Preview"></td></tr>
</tbody>
<tbody id="25116 _PreSQCvisits">
<tr><td></td><td></td><td></td><td></td></tr>
<tr><td><input type="checkbox" id="25116 _PreSQCCheckbox"></td><td><b>Previously SQC Visits</b></td><td></td><td></td></tr><tr style="background-color: greenyellow;"><td><input type="checkbox" id="25d62e5f-b69d-4f87-aaaa-09c44e06f1cb _25116 _Checkbox" name="visit_cb"></td><td>Week 12</td><td>1008-001, Week 12, 14005_MRI_Femur v1.0</td><td></td><td><input type="button" id="25d62e5f-b69d-4f87-aaaa-09c44e06f1cb _25116 _PreviewButton" value="SQC Analysis Preview"></td></tr>
</tbody>
</table>
편집 : 솔루션이 발견되었으며 ID 주위에 따옴표가 필요합니다. 코드는 아래 내 대답을 참조하십시오. 모든 도움에 감사드립니다.
죄송하지만 ID 선택자 주위에 따옴표가 누락 된 것으로 나타났습니다.
다음은 최종 jquery 코드입니다.
$("tbody[id$='" + wbId + " _ErrorVisits'] tr td input[type='checkbox']").prop('checked', $(this).prop('checked'));
구문 오류를 방지하고 ID에 공백이 있기 때문에 ID를 따옴표로 묶어야했습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다