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

时间:2017-08-13 21:55:36

标签: javascript jquery ecmascript-5

尝试知道所有输入框的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">
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:3)

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

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

附注:像$("[id^='txtYear_']")这样的选择器是一个很好的标志,你应该使用一个类。

答案 1 :(得分:1)

您可以使用jQuery中的solution函数。

    var numPatients  = 0...0
    var numExercises = 0...0
    var exerciseNames: [String] = []
    var orientation  : [String] = []
    var tags         : [String] = []
    var mainData     :[[String]] = [[String]]()

    var patientData  : [[String]] = [[String]]()
    exerciseNames.append("test exercise")
    exerciseNames.append("test exercise 2")
      orientation.append("test orientation")
             tags.append("test Tags")

    mainData.append(exerciseNames)
    mainData.append(orientation)
    mainData.append(tags)
    for h in numPatients{
        patientData.append(["\(h)"])
        for i in numExercises {
            patientData.append(["\(i)"])
            for j in 0...2 {
                print("\(h,i,j)")
                print(["\(mainData[j][i])"])
                patientData.append(["\(mainData[j][i])"])
                print(patientData)
            }
        }
    }
var allNotEmpty = true;

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

console.log(allNotEmpty);