在我的ASP.NET MVC应用程序中,我有一个带有select-tag的View,可以选择多个选项。
默认情况下(页面加载时)我在选择中没有选项。从某些操作可以使用选项填充选择,这可以正常工作。
现在,当我提交表单时,我想检查select是否有任何选项,因为在提交表单时要求select至少有一个选项。我不想检查是否选择了任何选项,只要select有任何选项。这是我到目前为止所得到的:
<select multiple="multiple" style="width:200px;" id="PersonnelClasses"
name="PersonnelClasses"></select>
和jQuery代码:
$("#PersonnelClasses").rules("add", {
required: true
});
现在,规则是什么样的,以检查选择列表中是否有任何项目?我没有在SO上找到任何解决方案,也没有在jQuery文档中找到任何解决方案。
更新
为选择添加选项的代码:
this.addPersonnelClass = function () {
$('#selectablePersonnelClasses :selected').
each(function (value, item) {
$('#PersonnelClasses')
.append($('<option></option>')
.val(item.value)
.html(item.text));
});
};
答案 0 :(得分:1)
据我了解,页面已加载,用户点击了几件事,然后选择动态填充选项。你想要的是在更新后获得选项的数量。
查看以下代码:
<html>
<head>
<script src="js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
function checkLength(){
alert($('#PersonnelClasses option').length);
}
</script>
</head>
<body>
<form NAME="myform" ACTION="" METHOD="GET">
<select multiple="multiple" style="width:200px;" id="PersonnelClasses" name="PersonnelClasses">
<option>bla</option>
<option>lala</option>
<option>lolo</option>
<option>l4</option>
</select>
<input type="button" name="mysubmit" onClick="checkLength()" value="Click" />
</form>
</body>
</html>