Jquery Exclude a Selector?
I've got a form that I clear on focus. I've selected the whole form and it works great except that the submit button goes blank when I click it.
how can I exclude my input of input#submit from the following code?
$(".wpcf7-form input, .wpcf7-form te开发者_运维技巧xtarea").focus(function() {
if( this.value == this.defaultValue ) {
this.value = "";
$(this).addClass('filled');
}
}).blur(function() {
if( !this.value.length ) {
this.value = this.defaultValue;
$(this).removeClass('filled');
}
});
Use the not selector to exclude what you want:
$(".wpcf7-form input:not('#submit_id'), .wpcf7-form textarea").focus(function() {
// your code......
}
Or
$(".wpcf7-form input:not(input[type=submit]), .wpcf7-form textarea").focus(function() {
// your code......
}
Use .not() to exclude your input button (or buttons) from the set of inputs you already have.
$('input.are.blong.to.us') // give me a bunch of inputs
.not('#submit') // exclude input#submit
.focus( ... )
.blur( ... );
You want the not-equal to selector:
.wpcf7-form input[id!=submit]
or
.wpcf7-form input[type!=submit]
$(".wpcf7-form input:not(#submit), .wpcf7-form textarea")
not
You could use the css3-not selector.
A selector like that would be: input:not([type=submit])
.
Example here: JsFiddle.
More info about the not
-selector here.
精彩评论