我的select option属性的名称是动态填充的。
在提交我的表格时,我需要知道我所有的forams是否都选择了已填...
我该怎么做呢?
我还想将鼠标光标移动到未填充的select。
<script type="text/javascript" src="js/jquery-1.6.4.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#teste").click(function () {
a = $("select[name='sel[]'] option:selected").length;
alert(a);
});
});
</script>
<title>
</title>
</head>
<form>
<select name="sel[0]">
<option value="teste"></option>
<option value="teste">1234</option>
<option value="teste">1234</option>
<option value="teste">1234</option>
</select>
<br />
<br />
<br />
<select name="sel[1]">
<option value="teste"></option>
<option value="teste">1234</option>
<option value="teste">1234</option>
<option value="teste">1234</option>
</select>
... Many others
<input type="button" id="teste" value="TESTAR">
</form>
</html>发布于 2013-11-27 02:52:50
您必须像这样设置变量var a;。
没有带有select[name='sel[]']的元素,您可以使用name*=或name^=分别表示name contains或name starts with sel
$("#teste").click(function () {
var a = $("select[name^='sel'] option:selected");
var count = 0;
$.each(a, function () {
if ($(this).text().length) {
count++;
}
});
alert(count);
});发布于 2013-11-27 03:05:38
将默认选项的值设为-1,并为这些选项提供一个通用的类名(这是以选择器开头的属性的效率)。
尝试:
HTML:
<form>
<select name="sel[0]" class="sel">
<option value="-1"></option>
<option value="teste">1234</option>
<option value="teste">1234</option>
<option value="teste">1234</option>
</select>
<br />
<br />
<br />
<select name="sel[1]" class="sel">
<option value="-1"></option>
<option value="teste">1234</option>
<option value="teste">1234</option>
<option value="teste">1234</option>
</select>
<input type="button" id="teste" value="TESTAR">JS:
$(document).ready(function () {
$("#teste").click(function () {
$(".sel").each(function () {
if (this.value == -1) { //If you are not providing value check for this.selectedIndex == 0
$(this).focus(); //set the focus
return false; //and break out of the loop
}
});
});
});发布于 2013-11-27 02:58:40
在提交表单时,Select的作用类似于通常的输入。因此,您可以查找值为空的selects:
$("select[value=]").first().focus()或者遍历所有表单元素,检查它的值和类型。
https://stackoverflow.com/questions/20225407
复制相似问题