知道ES5中是否所有输入框都为空(这个ES6的ES5等价物是什么?)

Knowing if all input boxes are empty in ES5 (what is the ES5 equivalent of this ES6?)

想知道ID以'txtYear_'开头的输入框是否都是空的。我有以下 ES6 代码,但我想要一个 ES5 等效代码:

谢谢!

let allNotEmpty = Array.from($("[id^='txtYear_']")).every(function(e) {
  return e.value !== "";    
})

console.log(allNotEmpty);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="txtYear_1" value="1">
<input id="txtYear_2" value="2">
<input id="txtYear_3" value="3">
<input id="txtYear_4" value="4">
<input id="txtYear_5" value="5">
<input id="txtYear_6" value="6">
<input id="txtYear_7" value="7">

您可以使用 callArray#every 应用于任何类似数组的对象:

var allNotEmpty = Array.prototype.every.call($("[id^='txtYear_']"), function(e) {
  return e.value !== "";    
});

旁注:像 $("[id^='txtYear_']") 这样的选择器是一个好兆头,您应该改用 class。

您可以使用 jQuery 中的 .each 函数。

var allNotEmpty = true;

$("[id^='txtYear_']").each(function(i, el) {
    allNotEmpty = allNotEmpty && el.value !== "";
});

console.log(allNotEmpty);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="txtYear_1" value="1">
<input id="txtYear_2" value="2">
<input id="txtYear_3" value="3">
<input id="txtYear_4" value="4">
<input id="txtYear_5" value="5">
<input id="txtYear_6" value="6">
<input id="txtYear_7" value="7">