【问题标题】:check dropdown value for every row in html table using javascript使用javascript检查html表中每一行的下拉值
【发布时间】:2016-07-16 05:42:35
【问题描述】:

我需要检查下拉值不等于在 html 表的每一行中选择。 当我提交值时,如果下拉选择的值为空或未在特定下拉列的 html 表的任何行中选择,它将显示错误消息。 这是我尝试的代码,但它没有检查所有行。

<script type="text/javascript">
    $(function DropDownvalidate() {

        $("#btnSubmit").click(function () {

            $('#table tr').each(function () {
              if ($('#ddlDates').val() == "Select") {
                alert("Please select an option!");
                return false;
            }
            return true;
       });
        });
    });


</script>

【问题讨论】:

  • 您可能希望正确格式化代码。
  • 请注意 HTML 代码

标签: javascript jquery


【解决方案1】:

我认为问题可能是您在错误的位置添加了 return true 语句,它应该在 .each() 函数之外。此外,您只需在表格行内搜索select inputid。所以使用find() 函数在当前行中查找选择输入。

$(function() { 
            $("#btnSubmit").click(function () {
               
                $('#table tr').each(function () {
                   if ($(this).find('#ddlDates').val() == "Select") {
                      alert("Please select an option!");
                      
                      return false; 
                   } 
                }); 
                return true;
            }); 
        });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<table id="table">
<th>Select options</th>
<tr><td><select id="ddlDates"> <option value="Select">Select</option> <option value="PreprationDate">Prepration Date</option> <option value="EventDate">Event Date</option> <option value="DismentillingDate">DismentillingDate</option> </select></td></tr>
  <tr><td><select id="ddlDates"> <option value="Select">Select</option> <option value="PreprationDate">Prepration Date</option> <option value="EventDate">Event Date</option> <option value="DismentillingDate">DismentillingDate</option> </select></td></tr>
  <tr><td><select id="ddlDates"> <option value="Select">Select</option> <option value="PreprationDate">Prepration Date</option> <option value="EventDate">Event Date</option> <option value="DismentillingDate">DismentillingDate</option> </select></td></tr>
  <tr><td><select id="ddlDates"> <option value="Select">Select</option> <option value="PreprationDate">Prepration Date</option> <option value="EventDate">Event Date</option> <option value="DismentillingDate">DismentillingDate</option> </select></td></tr>
</table>
<button id="btnSubmit">Submit</button>

【讨论】:

  • 此代码不检查所有行它只检查第一行,我想检查按钮单击时的所有行
  • 你也可以分享你的html吗?更容易验证
  • ''
  • 但是 sn-p 确实可以正常工作。如果您的表结构与我所拥有的相同,那么它应该可以工作。你用的是什么浏览器。
猜你喜欢
  • 1970-01-01
  • 2011-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-09
相关资源
最近更新 更多