Javascript jQuery选择器不是字符串
我正在编写一个生成字符串选择器的方法,用于绑定元素上的Javascript jQuery选择器不是字符串,javascript,jquery,Javascript,Jquery,我正在编写一个生成字符串选择器的方法,用于绑定元素上的input事件 我面临一个小问题,目前我的代码工作正常,但并不完美。 如果not_validated=true,则valid/invalid的值无关紧要,因为我的选择将选择它们。我正在寻找一种排除具有某些类的元素的方法。请参阅源代码中的TODO。可能是^或
input
事件
我面临一个小问题,目前我的代码工作正常,但并不完美。
如果not_validated=true
,则valid/invalid
的值无关紧要,因为我的选择将选择它们。我正在寻找一种排除具有某些类的元素的方法。请参阅源代码中的TODO
。可能是^或但是我只知道使用方法的方法,比如$.hasClass
等等
FormValidator.prototype.defaultOptions = {
// Performs live validation, on value change.
live: {
not_validated: true,
valid: true,
invalid: true
}
};
// Stuff ...
FormValidator.prototype._generateSelectorOnInput = function() {
var selector = '';
if(this.options.live && this.options.live.not_validated){
selector += '[data-validate]'// TODO: Need to exclude the selector that have INPUT_SUCCESS_CLASS or INPUT_ERROR_CLASS !
}
if(this.options.live && this.options.live.valid){
selector += (selector.length ? ', ' : '') + '[data-validate].' + INPUT_SUCCESS_CLASS
}
if(this.options.live && this.options.live.invalid){
selector += (selector.length ? ', ' : '') + '[data-validate].' + INPUT_ERROR_CLASS
}
return selector;
};
简单使用
您可能对选择器或方法感兴趣。请参阅.not()
。在您的案例中使用的是$('[data validate]')。而不是('.INPUT\u SUCCESS\u CLASS、.INPUT\u ERROR\u CLASS')
谢谢,非常简单。
selector += '[data-validate]:not(.' + INPUT_SUCCESS_CLASS + ', .' + INPUT_ERROR_CLASS + ')';