如果填充,则Jquery检查select和input元素

时间:2014-05-22 06:49:29

标签: jquery validation

我有这个代码检查所有select和input元素是否已填满。我收到错误。我错了(':输入,:选择')?感谢

<script type="text/javascript">
function checkFields()
{
  if (!$('#lastname,#firstname,#island2,#region2,#province2,#city2,#barangay2,#address,#gender,#birthdate').filter(function () {
    return $.trim(this.value) != ""
    }).length) {
    alert("Need input");
    e.preventDefault();
    }
    else
      $('#confirm-submit').modal('show');
}
</script>

3 个答案:

答案 0 :(得分:1)

它应该只是:input - 它涵盖了所有inputtextareaselect元素。

$(':input')

没有名为:select的选择器,而您可能必须使用元素选择器,:input是一个特殊的选择器,它将覆盖所有input元素,例如inputtextareaselect

答案 1 :(得分:0)

您正在以错误的方式使用jQuery选择器

if (!$(':input,:select').filter(function () {

应该使用标签名称选择器,如下所示:

if (!$('input,select').filter(function () {

要选择所有输入类型(输入,文本区域,选择框等),请使用:

if (!$(':input').filter(function () {

有关jQuery SelectorsjQuery Input Selectors

的详细信息

工作JSFiddle就在这里。 (如果条件被修改并将其与零比较)

答案 2 :(得分:0)

按元素选择

$('input,select')

我建议添加一个必需的属性并选择它(如果你有其他不需要的输入)

<input type="text" required />

$('input[required],select[required]')

获取值

.val()

用正则表达式替换所有空格(假设您不希望潜在的输入只是空格)

.replace(/ /gi, '')

测试是否没有字符

.length === 0