我有一个iframe(相同的域),上面有一堆复选框。 我希望从父页面运行javascript,并根据复选框的名称标记子项中的复选框(它们具有不同的值 - 但我想要全部检查它们)。 iframe的id及其名称都是AppBody。我关心的所有复选框都命名为dow0。
更新以包含我现在所处的位置,直至深入查看复选框。
alert("start");
var iframe = document.getElementById("AppBody");
var doc = iframe.contentWindow.document;
var widgets= doc.getElementById("widgets");
var detail= widgets.getElementById("Detail");
var checkboxes = doc.getElementsByName("dow0");
alert(checkboxes.length);
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].checked = true;
}
&#13;
答案 0 :(得分:1)
虽然您的代码中没有任何jQuery,但我会假设您使用的是jQuery,因为您的问题已被标记,并且没有javascript标记。
首先,将class="dow0"
添加到具有该名称的每个元素中。类比jQuery中的名称更容易使用。然后:
$('.dow0').prop('checked', true);
将检查类dow0
的所有复选框。这假设您没有在iframe之外使用相同类名的任何其他复选框。如果不是这样,你可以加入一个限制性更强的选择器:
$('#AppBody .dow0').prop('checked', true);
这就是说在checked
的任何元素中将true
属性设置为dow0
,该元素包含在标识为AppBody
的元素中。{/ p>