首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

有个比较奇怪的有关问题,checkbox的checked="cheecked"属性已添加,但是前边却没有后打钩

2013-11-15 
有个比较奇怪的问题,checkbox的checkedcheecked属性已添加,但是前边却没有后打钩如图所示,第一个已是ch

有个比较奇怪的问题,checkbox的checked="cheecked"属性已添加,但是前边却没有后打钩
有个比较奇怪的有关问题,checkbox的checked="cheecked"属性已添加,但是前边却没有后打钩

如图所示,第一个已是checked="checked"

======================================

上边是一个全选按钮,我试图点这个复选框来实现下边复选框的全选/全不选

但是效果不佳

效果呈现为:第一次点这个复选框,下边所有的都被勾选.  再点这个复选框,下边所有的都被取消勾选. 之后再点这个复选框无论多少次,只有属性的变化没有勾选的显示

代码如下:


        if(document.getElementById("checkAll").checked){
$("input[name='jinjian']").attr("checked","checked");
}else{
$("input[name='jinjian']").prop("checked",false).removeAttr("checked");
}


或者如下:(经过各种尝试,下边这是最早的写法,依然一样的问题)

$("input[name='jinjian']").attr("checked",document.getElementById("checkAll").checked);


====================================
而当我写作

$("input[name='jinjian']").attr("checked",$(this).attr("checked"));

则完全不起效,第一次都无法全选/全不选.

=======================================

环境是ThinkPHP jquery1.10.2 jQuery checkbox checked 全选 全不选
[解决办法]
这个问题别人好像遇到过,但我从未遇到过
试试
$("input[name='jinjian']").attr('checked',true);

$("input[name='jinjian']")[0].checked = 'cheched';

[解决办法]
Jquery 1.6+
你用的jquery版本使用prop比较好

if($("#checkAll").prop("checked") == true){
        $("input[name='jinjian']").prop("checked",true);
    }else{
        $("input[name='jinjian']").prop("checked",false);
    }

[解决办法]
 $(全选).onclick(
function(){$('input[type=checkbox]').attr('checked', $(全选).attr('checked'));} )
[解决办法]

.prop("checked",true); 
[解决办法]
<!doctype html>
<html>
<head>
<meta charset="gb2312">
<title>无标题文档</title>
<script type="text/javascript" src="jquery1.7.js"></script>
<script type="text/javascript">

$(document).ready(function(e) {
$("#quanxuan").click(function(e) {
if ($(this).attr("checked")=="checked"){
$("input[name='jinjian']").attr("checked",true)
}
else{
$("input[name='jinjian']").removeAttr("checked")
}
    });
});

</script>
</head>

<body>
<table width="400" border="1" align="center" id="table1">
  <tr>
    <td><input type="checkbox" name="quanxuan" id="quanxuan"></td>
    <td>a</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian"></td>
    <td>1</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian"></td>
    <td>2</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian" ></td>
    <td>3</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian" ></td>
    <td>4</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian"></td>
    <td>5</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian" ></td>
    <td>6</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="jinjian"></td>
    <td>7</td>
  </tr>
</table>
</body>
</html>

[解决办法]
$(document).ready(function(e) {
    $("#quanxuan").click(function(e) {
       $("input[name='jinjian']").attr("checked",this.checked);
    });
});
[解决办法]
参考
[解决办法]


.prop("checked",false)  试着把false改为""试试,如下:
.prop("checked","")
[解决办法]
if ($(this).attr("checked")=="checked") 你这里写的有错误啊 和环境没关吧
if ($(this).attr("checked"))这样写

热点排行