如何根据jquery中的其他文本框值验证选择框

时间:2011-08-22 10:24:37

标签: jquery

我有这样的表

<table>
  <tr>
    <th><select name ="select1" >options</select></th>
    <th><select name ="select2" >options</select></th>
    <th><select name ="select3" >options</select></th>
    <th><select name ="select4" >options</select></th>
    <th><select name ="select5" >options</select></th>
  </tr>
  <tr>
    <td><input type ="text" name="distance1"></td>
    <td><input type ="text" name="distance2"></td>
    <td><input type ="text" name="distance3"></td>
    <td><input type ="text" name="distance4"></td>
    <td><input type ="text" name="distance5"></td>
  </tr>
  <tr>
    <td><input type ="text" name="distance1"></td>
    <td><input type ="text" name="distance2"></td>
    <td><input type ="text" name="distance3"></td>
    <td><input type ="text" name="distance4"></td>
    <td><input type ="text" name="distance5"></td>
  </tr>
  .
  .
  .
  N rows
</table>

现在我想如果distance1已填满,则必须从select1选择框中选择一个选项,它适用于所有输入文本框。

我如何在jQuery中执行此操作?

1 个答案:

答案 0 :(得分:1)

我认为你的选择中有某种默认选项,如

<option value="0">choose value</option>

如果是这种情况,您希望在用户按某个按钮时继续验证,如果文本输入有一些文本,那么select必须有一个选项而不是0选择

只需将此验证添加到提交按钮

即可
var allInputs = $(":input");
var allSelects= $(":select");
for(i = 0;i < allInputs.length; i++)
{
    if(allInputs[i].val() != "" && allSelects[i].val() == 0)
        return false
}

当然,如果您有其他输入并选择,您应该替换输入和选择方法。在这种情况下,只需添加一些类并搜索