3 개의 헤더가있는 jQuery Datatable을 사용하고 있습니다. 하나의 머리글에는 두 개의 라디오 단추가 있고 다른 머리글에는 선택 상자가 있습니다. 기본적으로 옵션 중 하나가 선택됩니다.헤더의 jQuery datatable 라디오 버튼을 지 웁니다.
Datatable의 검색 기능을 사용하여 특정 레코드를 검색 할 때 어떤 라디오 버튼이 선택되었는지 표시하지 않습니다. 데이터 테이블 검색을 사용한 후에 DOM을 검사했으며 입력 요소에 CHECKED 특성이 여전히 포함되어 있습니다. 선택 상자는 영향을받지 않습니다. 선택 상자의 값은 여전히 유지됩니다.
또한 IE는 정상적으로 작동합니다. O_o FF와 Chrome에서 확인 된 값을 인식하지 못합니다.
$(selector).datatable().fnDraw();
... 아니 주사위를 시도했습니다.
검색 후 또는 검색 중에 checked 속성을 인식하도록 데이터 테이블을 얻으려면 어떻게해야합니까? 비슷한 경험을 한 사람이 있습니까?
도움을 주시면 감사하겠습니다. 감사.
편집 : 추가 조사를 마치면 fnDraw가 라디오 버튼의 값을 지우는 것처럼 보입니다.
코드
데이터 테이블 (자바 스크립트)를 초기화 데이터 테이블 헤더 의
$.get('store_handler.ashx', { cmd: '9', pubId: pubId, sub: sub }, function(o) {
$("#researchTableDiv").html(o.datatableContent);
$('#ResearchTable').dataTable({
"bJQueryUI": true,
"bPaginate": false,
"sScrollY": "450px",
"bSort": false
});
if (o.radioCheck == "single")
$('#radioSingle').attr("checked", "checked");
else
$('#radioSub').attr("checked", "checked");
}, "json");
HTML (C# 닷넷)
htmlString.Append("<thead>");
htmlString.Append("<tr>");
htmlString.Append("<th valign=\"middle\" style=\"width: 200px; text-align: left;valign:top;border-right:0px;padding-bottom:0px\" class=\"header\">Filter: ");
htmlString.Append("<select name=\"nonSort2\" style=\"height:20px;padding:0px;margin-top:-0px;font-size:11px\">");
htmlString.Append("<option value=\"AKLPH\">All</option>");
htmlString.Append("<option value=\"-\">---------------</option>");
htmlString.Append("<option value=\"AK\">Alaska</option>");
htmlString.Append("<option value=\"AL\">Etc...</option>");
htmlString.Append("</select>");
htmlString.Append("</th>");
htmlString.Append("<th align=\"left\" class=\"header\" >");
if (sub == "0")
{
htmlString.Append("<input type=\"radio\" value=\"0\" name=\"rdoSubscription\" id=\"radioSingle\" checked=\"CHECKED\" style=\"margin-left:1px\"/>Single Report");
htmlString.Append("<input type=\"radio\" value=\"1\" name=\"rdoSubscription\" id=\"radioSub\" onclick=\"getPubDetails('" + pubId + "','1');\" style=\"margin-left:1px\"/>Subscription");
jOut.Put("radioCheck", "single");
}
else
{
htmlString.Append("<input type=\"radio\" value=\"0\" name=\"rdoSubscription\" id=\"radioSingle\" onclick=\"getPubDetails('" + pubId + "','0');\" style=\"margin-left:1px\"/>Single Report");
htmlString.Append("<input type=\"radio\" value=\"1\" name=\"rdoSubscription\" id=\"radioSub\" checked=\"CHECKED\" style=\"margin-left:1px\"/>Subscription");
jOut.Put("radioCheck", "sub");
}
htmlString.Append("</th>");
htmlString.Append("<th class=\"header\" align=\"center\">Action</th>");
htmlString.Append("</tr>");
htmlString.Append("</thead>");
당신이 제공 할 수있는 지원 코드가 문제를 지원해야합니까? – RobB
@RobB 코드 추가됨 ... –
@Ant : dataTables.js에서 빠른 검색을 수행하고 "jqFilter"와 같은 것을 발견했습니다. 검색 작업이 발생합니다. –