我有这样的HTML结构:
<div class="input_div_0">
<input type="text" class="textbox input">
</div>
<div class="input_div_1">
<input type="text" class="textbox input">
</div>
<div class="input_div_2">
<input type="text" class="textbox input">
</div>
我想编写一个表达式,如果任何input
包含文本
修改
根据Dimitar的回答,我想出了这个:
function checkInputs()
{
$('input.textbox').each(function () {
if ($(this).val() !== "") {
return true;
}
});
return false;
}
if (!checkInputs()) {
//Display message
}
但每次都会返回错误。
答案 0 :(得分:7)
尝试使用Array.prototype.some
var res = Array.prototype.some.call(document.querySelectorAll("input")
, function(el, i) {
return el.value.length > 0
});
console.log(res);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="input_div_0">
<input type="text" class="textbox input">
</div>
<div class="input_div_1">
<input type="text" class="textbox input">
</div>
<div class="input_div_2">
<input type="text" class="textbox input" value="0">
</div>
答案 1 :(得分:0)
$('input[type="text"]').each(function() {
console.log(!!$(this).val());
});
答案 2 :(得分:0)
function checkInput(){
var result = false;
$('input.textbox').each(function() {
if($(this).val() !== ""){
result = true;
};
});
return result;
};
答案 3 :(得分:0)
试试这个:
工作示例https://jsfiddle.net/d313m9vL/
$(function(){
function isEmpty(){
var inputs = $("input[type=text]");
if(inputs.val().length === 0)
return true;
}
$("button")
.on("click", function(){
if(isEmpty) alert("error");
});
});