0

2 つのドロップダウン リストがあります。2 つ目は、最初に選択されたオプションに基づいて更新されます。

これらを IE8 でテストしたところ、最初のドロップダウン リストが変更されたときに 2 番目のドロップダウン リストがまったく更新されないことがわかりました。空のままです!

これを修正するにはどうすればよいですか? Chrome と Firefox では問題なく動作します。

jQuery

$("#dept").on("change blur", function () {
        var dept = $("#dept").val();
        var dataString = 'dept=' + dept;
        $.ajax({
            type: "POST",
            url: "process_dept.php",
            data: dataString,
            cache: false,
            success: function (html) {
                $('#moduleCode').html(html);
            }
                });
        $.ajax({
            type: "POST",
            url: "process_moduleCode.php",
            data: dataString,
            cache: false,
            success: function (html) {
                $('#moduleName').html(html);
            }
        });
    }); 
4

1 に答える 1

1

のみがdocument準備完了機能を持っている可能性があるので、次のようになります。

$("#dept").ready(function () { ...

実際にはまったく有効ではありませんが、一部のブラウザーで実際に機能することはさらに驚くべきことです。

ドキュメントから:

.ready() メソッドは、現在のドキュメントに一致する jQuery オブジェクトでのみ呼び出すことができるため、セレクターは省略できます。

多分それはあるべきです:

$("#dept").on('change', function () { ...

要素が変更されるたびにajax関数をバインドしようと#deptしていて、ドロップダウンがselect要素であると想定している場合。

于 2013-02-17T03:21:19.120 に答える