1

我正在尝试检索“today_div”的 html,就像它在浏览器中的样子。

问题是,即使用户单击复选框,在检索时,div 的 html 也不会在复选框 html 中显示“已选中”,如下所示。

如何通过更改检索 html?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<script type="text/javascript" src="./js/jquery-1.10.2.min.js"></script>
</head>
<body>

<div id="today_div">
<input type="checkbox" name="as" class="achk">
</div>

<script language="JavaScript" type="text/javascript" defer=true>

$(document.body).on( "change",'.achk', function() {
    var s = $('#today_div').html();
    alert(s);
});

</script>

</body>
</html>

更新:有人知道为什么上述方法不起作用吗?如果用户选中了还不够的复选框?他还必须在javascript中设置它。很奇怪。

4

2 回答 2

2

喜欢:

$(document.body).on( "change",'.achk', function() {
    var $this = $(this),
        is_checked = $(this).attr("checked") ? "checked" : "";
    $this[0].setAttribute("checked", is_checked);
    alert($('#today_div').html());
});

演示 :: jsFiddle

于 2013-10-09T10:48:29.497 回答
1
$(document).on( "change",'.achk', function() {
    if($(this).is(":checked")){
       $(this).attr("checked","checked");
    }else{
       $(this).removeAttr("checked");
    }
    var s = $('#today_div').html();

    alert(s);
});

演示

参考属性

于 2013-10-09T10:50:56.873 回答