我在html中有一个下拉列表,我想使用jquery验证它。
Please select your rating * :
<select id="myDropdown">
<option value="">-Please Select-</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
<option value="4">Four</option>
<option value="5">Five</option>
</select>
我的Jquery代码就像
if ($('#myDropdown option:selected').length == 0)
{
alert("Please select anyone");
}
我需要的是,如果没有选择任何值,它仍然像 - 请选择 - 如果用户按下提交按钮,则需要显示警报或任何相应的消息 请帮忙
答案 0 :(得分:6)
mydropdown = $('#myDropdown');
if (mydropdown.length == 0 || $(mydropdown).val() == "")
{
alert("Please select anyone");
}
请参阅下面的注意。此外,您不需要option:selected
(根据Sly的原始答案)。
在这个小提琴上,尝试选择其他值,然后尝试选择-Please Select-
选项。您会看到alert()
。
http://jsfiddle.net/userdude/aS2AM/
修改强>
注意:长度测试什么都不做,因为它总是报告1,因为总是至少选择一个选项(并且你的选择器总是选择至少一个选项,除非选择有没有选择)。我已在此更新中删除了以下小提琴和代码:
http://jsfiddle.net/userdude/LdN6c/3/
您没有捕获表单提交事件。
$(document).ready(function() {
$('#myForm').submit(function(e){ // <<< This selector needs to point to your form.
if ($('#myDropdown').val() == "") {
alert("Please select anyone");
e.preventDefault();
return false;
}
});
});
请注意#myForm
需要选择包含所选元素的实际表单元素。
答案 1 :(得分:-1)
jQuery(function($) {
$('#myForm').submit(function(e) {
if ($('#myDropdown').val() == '') {
e.preventDefault();
alert("Please select anyone");
}
});
});