Я попытался полностью сфотографировать этот checkbox check/uncheck фрагмент кода в jQuery, но он не имел никакого успеха. Вот код jQuery/JavaScript:
$.ajax({
type: "GET",
url: "check.xml",
cache: false,
dataType: "xml",
success: function(xml) {
$(xml).find("check").each(function(){
$(xml).find("todo").each(function(){
var state = $(this).attr("state");
if (state == "true") {
document.getElementById($(this).attr("id")).checked = true;
} else {
document.getElementById($(this).attr("id")).checked = false;
}
});
});
}
});
Вероятно, очень возможно сделать document.getElementbyId(blablabla)....
используя только jQuery. Я попробовал это:
($(this).attr("id")).prop("checked", true)
Но это действительно не так, как ожидалось. Какие-либо предложения?
Вам не хватает "#" в селекторе:
var id = '#'+ $(this).attr("id");
Затем вы можете сделать один лайнер вместо "if":
$(id).prop("checked", (state == "true"));
Вам нужно сделать это так (обратите внимание на символ #
чтобы получить элемент из идентификатора - те же правила, что и селектор CSS) -
var id = $(this).attr("id");
$('#'+ id).prop("checked", true);
$(this).prop('checked',true)
?