代码位于http://jsfiddle.net/eCubeH/utBEs/1/
下方需要选择。因此,选择第一个空字符串值选项应该使其无效。
我使用jquery条件:($(myChangeSelector +":invalid")。length> 0)来识别无效状态。 Firefox 15正确返回值1以表明它无效。 Chrome 21返回0,然后继续表现不一致。
一直在打破这个问题,这是Chrome还是我错过了什么?
-----代码-----
<select id="selDisbLocation" required="" tabindex="3">
<option value="" >-</option>
<option value="0" selected>Center</option>
<option value="1" >Office</option>
</select>
$(function() {
$("select").live(
"change",
function(event) {
myChangeSelector = "#" + event.target.id;
alert(myChangeSelector);
alert($(myChangeSelector).val());
alert("Invalid Length: " + $(myChangeSelector + ":invalid").length);
});
});
答案 0 :(得分:0)
根据https://developer.mozilla.org/en-US/docs/CSS/:invalid,CSS伪类:invalid
仅适用于<input>
和<form>
元素。这可能是您意外结果的原因。
我建议改为通过值或索引使<select>
无效。