我正在使用JQuery插件,它使用以下行
var inputSelector = 'input[class]:not(:button|:submit|:reset), textarea[class], select[class]';
选择一些元素。
它还选择隐藏元素,如何在不给任何隐藏元素的类的情况下实现它?
它必须在IE中工作。
答案 0 :(得分:2)
您可以对选择器返回的数组使用not()方法。
var inputSelector = 'input[class]:not(:button|:submit|:reset), textarea[class], select[class]';
var controls = $(inputSelector).not('[type="hidden"]');
这会过滤选择器返回的数组中的隐藏元素。
答案 1 :(得分:1)
花了我一分钟,但想出来jsfiddle example
抱歉,它没有保存正确修改强> 现在没有班级
这是html
<input type="text" name="foo" />
<input type="hidden" name="hidden" id="bar" value="surprise" />
<input type="submit" name="submit" />
这里是jQuery
var inputSelector = 'input:not(:button, :submit, :reset,:hidden), textarea, select';
$(inputSelector).val('foobar');
var bc = $('#bar').val();
alert(bc);
警报应该说“惊喜”,因为未选中ID为“bar”的隐藏元素
答案 2 :(得分:0)
var inputSelector = 'input[class]:not(:button|:submit|:reset|:hidden), textarea[class], select[class]';
也不会选择隐藏元素。