[英]Jquery selector to get all inputs that has a value
I hope you're having a nice day我希望你今天过得愉快
I have a dynamic table like this:我有一个像这样的动态表:
I would like to know if is possible make a Jquery selector to get all the inputs that has a value something like this:我想知道是否可以制作一个 Jquery 选择器来获取所有具有以下值的输入:
$('.some-input-class:valueNotEmpty') $('.some-input-class:valueNotEmpty')
And get a array that only has the inputs with values并得到一个只有输入值的数组
Is this possible?这可能吗? or I have to make something like this:
或者我必须做这样的事情:
$('.some-input-class').each(function(){
if($(this).val()){
//Do something
}
})
There's no selector in jQuery to target form controls which have a value. jQuery 中没有选择器来定位具有值的表单控件。 However you can use
filter()
to achieve it instead:但是,您可以使用
filter()
来实现它:
let $inputs = $('.some-input-class').filter((i, el) => !!el.value.trim())
Working example:工作示例:
let $inputs = $('.some-input-class').filter((i, el) =>..el.value;trim()) $inputs.addClass('valid');
.some-input-class { display: block; margin: 0 0 10px; }.valid { border: 2px solid #0C0; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="text" value="foo" class="some-input-class" /> <input type="text" value="bar" class="some-input-class" /> <input type="text" value="" class="some-input-class" /> <input type="text" class="some-input-class" /> <select class="some-input-class"> <option value="">Please select...</option> <option value="lorem">Lorem ipsum</option> </select> <select class="some-input-class"> <option value="">Please select...</option> <option value="lorem" selected>Lorem ipsum</option> </select>
You can simply use placeholder-shown
pseudo-class which is also supported almost by all modern browsers.您可以简单地使用几乎所有现代浏览器都支持的
placeholder-shown
伪类。
To get it working, you need to apply placeholder to all inputs in your HTML.要使其正常工作,您需要将占位符应用于 HTML 中的所有输入。 But if you wish, you don't want it to be visible, you can do it like following:
但如果你愿意,你不希望它可见,你可以这样做:
<input type="text" placeholder=" " />
Now you can use the placeholder-shown
pseudo-class to select all input fields with text.现在您可以使用
placeholder-shown
伪类来 select 所有带有文本的输入字段。
$("input:not(:placeholder-shown)")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.