我目前正在嘗試構建複選框的一些驗證功能,其中包括勾選所有6爲綠色,當所有都是,如果不選中黃色,如果沒有選中x。刪除複選框上的元素滴答作用,其中添加其他元素
它似乎工作正常,除非刪除以前的顏色,一旦我已經添加它們。我試圖從另一幅圖像中刪除不同的圖像,但當我嘗試這些圖像時沒有太大的運氣。
我非常需要一種方式來看待每當我類被加載,它將刪除任何其他標記
它的意思的工作是有感嘆號當事情沒有打勾,X時,沒有和所有6 ,勾綠色。
FIDDLE: https://jsfiddle.net/3c1vhkwf/1/
$(document).ready(function() {
$('head').append('<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" type="text/css" />');
$('.chkValidation input').change(function() {
$('input[name="' + this.name + '"]').not(this).prop('checked', false);
if(checkValues())
{
if($('.chkValidation :checked').size() == 6)
{
$('<i class="fa fa-check" aria-hidden="true" style="color:green; display:inline-block;"></i>').insertAfter('.chkValidation :checked');
}
else
{
$('<i class="fa fa-exclamation-circle" aria-hidden="true" style="color:orange"></i>').insertAfter(this);
}
}
else
{
$('<i class="fa fa-times" aria-hidden="true" style="color:red"></i>').insertAfter(this);
}
});
function checkValues(){
var valid = true;
$('.chkValidation input[type=checkbox]').each(function() {
if($(this).prop('checked'))
{
if($(this).prop('value') == "No")
{
valid = false;
}
}
})
return valid;
}
});
我不使用jQuery,但你似乎是添加每個更改事件的新元素。您應該只是在更改元素上添加/刪除類。 [MDN classList API](https://developer.mozilla.org/en-US/docs/Web/API/Element/classList) –