2

コードは以下とhttp://jsfiddle.net/eCubeH/utBEs/1/にあります

選択が必要です。したがって、最初の空の文字列値オプションを選択すると、無効になります。

jquery condition: ($(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);
    });
});

</p>

4

1 に答える 1

0

https://developer.mozilla.org/en-US/docs/CSS/:invalidによると、CSS 疑似クラスはand要素:invalidにのみ適用されます。それが、予期しない結果の原因である可能性があります。<input><form>

<select>代わりに by value または index を無効にすることをお勧めします。

于 2012-10-09T12:49:55.523 に答える