我想突出显示我的html中没有选定值的所有选择。对于我可以看到的类似问题,我的选择器是正确的,但它不起作用。
它出了什么问题?
$('[value=""]').addClass('fill-field');
答案 0 :(得分:0)
<select>
没有value
属性 - 他们的<option>
会这样做。因此,仅使用属性选择器就无法做到这一点。使用.filter()
。
$('select').filter(function ()
{
return !$(this).val();
}).addClass('fill-field');
然而,听起来您正在进行一些客户端表单验证。 Might I suggest not reinventing the wheel?
答案 1 :(得分:0)
试试这个
$("input, select").change(function(){ // as from your prev. question
if($(this).val() == ''){
$(this).addClass('fill-field');
} else {
$(this).removeClass('fill-field');
}
});
<强> demo 强>
答案 2 :(得分:0)
工作演示 * 选择演示 * http://jsfiddle.net/QF5QJ/ - http://jsfiddle.net/8hQPS/
希望它适合原因`:)
示例代码
var $selects = $("select").filter(function(i) {
return $.trim($(this).attr("value")) == '';
});
$selects.css({
background: 'orange'
});
或强>
var $tds = $("td").filter(function(i) {
return $.trim($(this).attr("value")) == '';
});
$tds.css({
background: 'orange'
});
答案 3 :(得分:0)
试试这个:
// add the rule here
$.validator.addMethod("valueNotEquals", function(value, element, arg){
return arg != value;
}, "Value must not equal arg.");
// configure your validation
$("form").validate({
rules: {
SelectName: { valueNotEquals: "default" }
},
messages: {
SelectName: {
valueNotEquals: "Please select an item!"
}
}
});
或者只是你可以像这样申请你的课程:
// add the rule here
$.validator.addMethod("valueNotEquals", function(value, element, arg){
return arg != value;
}, "Value must not equal arg.");
// configure your validation
$("form").addClass('fill-field');