2014-10-16 130 views
0

如果选中该复选框,则需要更改复选框的外观(样式),以便它更好地显示在页面上。每个复选框都有一个唯一的ID,当表填充时,这个ID由ajax生成。我可以通过使用此代码在同一个表中所列价格领域:用jquery更改复选框的样式

function hiLight() { 
$('#guides td.price').each(function() { 
    if ($(this).html()!= '') 
    { 
     $(this).css('border', '3px solid red'); 
    } 
}); 

,并试图使用经修订的部分对应的复选框:

$('#guides :checkbox').each(function() { 
    if ($(this).is(':checked')) { 
     $(this).css('border', '3px solid red'); 
    } 
}); 
}//END OF HILIGHT FUNCTION 

我知道这是怎么回事进入复选框功能,因为我使用了一个警报来查看它是否是。我认为这是$(this)这是造成它不知道要格式化,因为在警报中我使用alert($(this))并得到了[object] [object]这甚至可能不使用插件?如果是这样,有人可以请我指出正确的方向

+0

你为什么不只是做纯CSS? – epascarello 2014-10-16 17:05:35

+0

我不希望每个复选框(页面上大约有30多个)都被突出显示,只是选中的复选框。 – Jim 2014-10-16 17:06:17

+1

你可以在CSS中完成:'#guides input [type =“checkbox”]:checked {outline:3px solid red; }' – epascarello 2014-10-16 17:06:49

回答

2

首先你不需要JavaScript来输入样式。 其次,复选框没有边框,但可以使用轮廓。

#guides input[type="checkbox"]:checked { 
 
    outline: 3px solid red; 
 
}
<div id="guides"> 
 
    <input type="checkbox" /> 
 
    <input type="checkbox" /> 
 
    <input type="checkbox" /> 
 
    <input type="checkbox" /> 
 
    <input type="checkbox" /> 
 
</div>

+0

我不知道我不得不使用轮廓。这是诀窍。谢谢。 – Jim 2014-10-16 17:13:49