首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用JavaScript检查所选的下拉列表值是否设置为“否”和“文本框”为空

如何使用JavaScript检查所选的下拉列表值是否设置为“否”和“文本框”为空
EN

Stack Overflow用户
提问于 2014-01-19 17:30:49
回答 2查看 1.2K关注 0票数 0

我在一个网格视图中有下拉和文本框,我正在尝试检查下拉列表的选定值是否设置为“否”,并且在文本框中没有输入注释,然后我想显示消息。只要下拉列表的选定值设置为No,则要求必须在文本框中输入注释。我的问题是,即使下拉设置为“是”,或者当下拉设置为“否”时提供注释,我仍将收到消息。以下是代码:

代码语言:javascript
运行
复制
    function validate() {
        var flag = false;
        var gridView = document.getElementById('<%= GridView1.ClientID %>');

        for (var i = 1; i < gridView.rows.length; i++) {
            var ddl = gridView.rows[i].getElementsByTagName('Select');
            var areas = gridView.rows[i].getElementsByTagName('textarea');
            if (ddl != null && ddl.length > 1 && ddl[0] != null && areas != null && areas.length > 1 && areas[0] != null) {
                if (areas[0].type == "textarea" && ddl[0].type == "select-one") {
                    var txtval = areas[0].value;
                    var txtddl = ddl[0].value;
                    if (txtddl.value == "No" && (txtval == "" || txtval == null)) {

                        flag = false;
                        break;
                    }
                    else {
                        flag = true

                    }
                }
            }
        }
        if (!flag) {
            alert('Please note that comments is required if drop down is set to No.  Thanks');
            areas[i].focus();
        }
        return flag;
    }

</script>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-19 18:00:09

你可以这样做:

代码语言:javascript
运行
复制
<script>
    function validate() {
        var flag = false;
        var gridView = document.getElementById('<%= GridView1.ClientID %>');

        for (var i = 1; i < gridView.rows.length; i++) {
            var selects = gridView.rows[i].getElementsByTagName('select');
            //var inputs = gridView.rows[i].getElementsByTagName('input');
            var areas = gridView.rows[i].getElementsByTagName('textarea');
            if (selects != null && areas != null) {
                if (areas[0].type == "textarea") {
                    var txtval = areas[0].value;
                    var selectval = selects[0].value;
                    if (selectval == "No" && (txtval == "" || txtval == null)) {

                        flag = false;
                        break;
                    }
                    else {
                        flag = true;
                    }
                }
            }
        }
        if (!flag) {
            alert('Please enter comments.  Thanks');

        }
        return flag;
    }
</script>
票数 1
EN

Stack Overflow用户

发布于 2014-01-19 17:41:51

试试这个:

代码语言:javascript
运行
复制
$('#select').on('change', function () {

   var text = $(this).find(":selected").text();
   var textBox = $(this).parent().filter('input [name="InputName"]');
   if(text == "no" && textBox.val() =="")
   {
      \\display your message
   }
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21220133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档