我有一个HTML下拉控件。我想检查如果其中的文本是“选择”,它必须显示错误消息。我使用以下代码来执行此操作,但它无法正常工作。
if (document.getElementById("StudentCountry").value == "Select")
{
alert("Please select your country.");
document.getElementById("StudentCountry").focus();
return false;
}
答案 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>