检查所有子输入字段是否具有值

时间:2015-08-18 00:36:52

标签: javascript jquery

我想在更改输入后检查同一行的所有输入字段是否都有值:

HTML

<tr>
    <td><input type="text"></td>
    <td><input type="text"></td>
    <td><input type="text"></td>
</tr>

JS

$(this).find('input').each (function() {

});

因此,如果所有输入字段都有值,我想发送true,否则为false。

2 个答案:

答案 0 :(得分:2)

这样的事可能吗?

var valid = true;
$(this).find('input').each (function() {
  if ($(this).value().length == 0) {
    valid = false;
  }
});

这会起作用吗?

修改

继承我的代码及其运作方式; https://jsfiddle.net/3748str4/ - 请注意,该事件处于“更改”状态,这意味着您需要单击该字段的OUT才能触发事件。

答案 1 :(得分:1)

你可以这样做:

it("should not setMode with invalid mode", function()
  assert.has_error(function() display.setMode(100) end, "INVALID DISPLAY MODE: 100")
end)

&#13;
&#13;
var nInputs = $('input', this).length,
    nVals   = $('input', this).filter(function() {
        return !!this.value.trim();
    }).length;
if( nVals === nInputs ) {
    //all inputs have values;
}
&#13;
$(function() {
    $('#check').on('click', function() {
        $('tr').each(function(i,v) {
            console.log( 'Row ' + i );
            var inputs = $('input', this),
                nVals = inputs.filter(function() { return !!this.value.trim(); }).length;
            if( nVals === inputs.length ) {
                console.log( 'All inputs have values' );
            } else {
                console.log( nVals + '/' + inputs.length + ' have values' );
            }
        });
    });
});
&#13;
&#13;
&#13;