我有一个包含64
输入的表,我想检查表#Matrix
中的所有输入值是否不为空。如果至少有一个输入值不为空,那么我们没问题。以下是我的尝试。
只有第一个输入不为空时才返回true。
if (!$('table #Matrix1 input').val()) {
console.log("Empty");
return false;
}
答案 0 :(得分:3)
一种选择是使用.filter
过滤空输入。这将给出空输入的长度。像:
var empty = $('#Matrix1 input').filter(function() {
return this.value.trim() === ''; //Get the value and trim. Return true if equals to an empty string
}).length;
这是一个片段。
$('[type="button"]').click(function() {
var empty = $('#Matrix1 input').filter(function() {
return this.value.trim() === '';
}).length;
//console.log(empty);
if ( $('#Matrix1 input').length === empty ) console.log('All are empty. Return false.');
else console.log('Not all are empty');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id='Matrix1'>
<input type="text" value='1'>
<input type="text" value='1'>
<input type="text" value='1'>
<input type="text" value=' '>
<input type="text" value=' '>
<input type="text" value=''>
</div>
<button type="button">Click Me!</button>
Doc:.filter()