0

JQueryを使用していくつかのコンボボックスをセットアップし、.combobox呼び出しを.ready関数でラップして、コントロールが使用可能であることを確認しましたが、ページを読み込むたびに、コンボボックスに使用される要素は使用できません。 DOMで。何が起こっているのですか、そしてこれはどのように可能ですか?

私の外部JavaScript

$(document).ready(function()
{
    if (document.getElementById('selMinPrice'))
    {
        console.log('selMinPrice exists in the DOM.');
        console.log('selMinPrice value=' + document.getElementById('selMinPrice').value);
    }
    else
    {
        console.log('selMinPrice DOES NOT EXIST in the DOM!!!!!!!!!!!!!!!!!!!!!!!!!!');
    }
    // setup min & max price comboboxes
    $(".selMinPrice").combobox();
    $(".selMaxPrice").combobox();
    $("#toggle").click(function ()
    {
        $(".selMinPrice").toggle();
        $(".selMaxPrice").toggle();
    });
});

IEの問題に気付いたのは何らかの理由だけですが、それは他のブラウザに存在しないということではありません。

考え?

4

1 に答える 1

1

これはjQuery1.8.0で導入され、1.8.1で修正されたバグです。

チケット: http: //bugs.jquery.com/ticket/12282

これは、 http: //blog.jquery.com/2012/08/30/jquery-1-8-1-released/のjQuery1.8.1のリリースノートに記載されています。

1.8.0から1.8.1にアップグレードすると、IEで.readyが早く呼び出されないようにする必要があります。

于 2012-09-17T17:20:09.623 に答える