检查HTML DropDown选项

时间:2009-12-16 12:15:04

标签: javascript html

我有一个HTML下拉控件。我想检查如果其中的文本是“选择”,它必须显示错误消息。我使用以下代码来执行此操作,但它无法正常工作。

if (document.getElementById("StudentCountry").value == "Select")
    {
        alert("Please select your country.");
            document.getElementById("StudentCountry").focus();
            return false;                               
    }

4 个答案:

答案 0 :(得分:5)

document.GetElementById("StudentCountry").SelectedIndex=0;

function getDropDownListvalue()
{
    var IndexValue = document.GetElementById("StudentCountry").selectedIndex;
    var SelectedVal = document.GetElementById("StudentCountry").options[IndexValue].value;
    alert(SelectedVal);
}

检查所选值=“选择”

答案 1 :(得分:4)

var box = document.getElementById("StudentCountry");
if(box.options[box.selectedIndex].text == "Select")

答案 2 :(得分:0)

这个javascript代码是如何嵌入你的html文件的?它只是在一个脚本元素中而不是在一个独特的函数中吗?如果是这样,这可能总是为函数返回null,因为下拉列表在使用时没有加载。否则代码应该工作。只需输入一个函数,让我们说checkCountry()并将其添加为onchange =“checkCountry();”到标签。 可能破坏您的代码的第二件事是检查“选择”文本。如果检查选项的值,则很可能会检查value属性,例如: 选择 在这个例子中,select是全部小写的,不能与你的==。

相比

我希望这会有所帮助。

答案 3 :(得分:0)

您的代码似乎很完美。检查一次默认选项值是“选择”还是不...

 <html>
   <head>
     <script language="javascript">
        function validate(){
          alert('ddddddddddd ='+document.getElementById("StudentCountry").value);
          if (document.getElementById("StudentCountry").value == "select")
            {
              alert("Please select your country.");
              document.getElementById("StudentCountry").focus();
              return false;                                                       
            }
         return false;
        }
         </script>

      </head>


         <body>
       <select id="StudentCountry">
              <option  value="select" >---------Please Select ---------</option>
               <option value="India" >India</option>
               <option value="USA" >UAS</option>
              <option value="UK" >UK </option>
        </select>

   <a onclick="javascript:validate();" href="#">click here to validate</a>