我在页面上有复选框,当您单击每个复选框的跨度时,它将更改每个复选框的包含div的背景颜色。问题是当有人提交表单并转到下一页时,然后单击后退按钮,复选框仍保持选中状态,但div颜色将恢复。有没有办法在页面加载时获取复选框的div ID?
我有这个来检测body onload中的复选框,但不知道如何为每个框获取div id:
function detectchecked(){
var count = 0;
var inputs = myform.getElementsByTagName('input');
for (var i = 0, j = inputs.length; i<j; i++) {
var input = inputs[i];
if (input.type && input.type === 'checkbox' && input.checked) {
alert(input);
}
}
}
我目前的输入代码如下:
<div id="myform">
<div id="div4452101" style="float:left; width:194px; height:90px; border:1px solid #000; margin:2px;">
<div class="resultphoto">
<span onClick="checkem('4452101');">
image goes here
</span>
</div>
<span onClick="checkem('4452101');">
check this
</span>
<input type="checkbox" name="numbers[]" id="4452101" value="4452101" />
</div>
</div>
答案 0 :(得分:2)
在这样无代码和简单的问题中不需要jQuery。
您必须使用以下代码:
function detectchecked(){
var count = 0;
var inputs = myform.getElementsByTagName('input');
for (var i = 0, j = inputs.length; i<j; i++) {
var input = inputs[i];
if (input.type && input.type === 'checkbox' && input.checked) {
document.getElementById('div'+input.getAttribute('id')).setAttribute('style','Your style here');
}
}
}
当然,如果我理解正确的话
答案 1 :(得分:1)
您认为使用框架吗? JQuery?
那个剧本很简单:
$('#myform input [type = checkbox]:checked')。attr('style','your style');