2012-01-15 18 views
1

次の情報で私は別の問題を発見しました。フィールドにフォーカスが当てられたときに利用可能な値のリストを表示するようオートコンプリートを改善しました。 FirefoxとChromeではうまく動作しますが、IE9ではうまく動作しません。有効な値のJQueryオートコンプリートドロップダウンがIE9で機能しません

コード例hereを作成しました。 FirefoxやChromeで開くと機能しますが、IE9で開くと機能しません。どうして?

誰でもこの問題を解決できますか?

UPDATE

Description of the issue

上記画像は、Firefoxのためのものです。使用可能な値のリストは、カーソルがフィールドに設定されているときに表示されます。 IE9を使用している場合、このリストは表示されません。

+3

それは...あなたは正確にについての詳細の多くを提供していません(IE9で)...私のために正常に動作します*どのように*動作しません。 – Pointy

+0

@Pointyスクリーンショットで自分の質問を更新しました – JVerstry

+0

テキスト入力にフォーカスが入るとすぐにリストが表示されます。 IE9で。 – Pointy

答えて

1

あなたif条件は、この、===

if (this.value == "") { 
    $(this).autocomplete("search", ""); 
} 

==は(値のみ)に等しい用い==の代わりに使用することを好むべき

===(値およびタイプ)に正確に等しい


EDIT

ちょうどconsole.log(this.value);をコメントしてください。

http://jsfiddle.net/PEhdP/4/

+0

私はこの解決策を試しましたが、問題は残ります。 – JVerstry

+0

@JVerstry:更新された回答を参照してください。それは働いている。 –

+1

ありがとう、console.log()問題でした! – JVerstry

-2

$(function() { var cache = {}, lastXhr; $("#birds").autocomplete({ minLength: 2, source: function(request, response) { var term = request.term; if (term in cache) { response(cache[ term ]); return; } lastXhr = $.getJSON("search.php", request, function(data, status, xhr) { cache[ term ] = data; if (xhr === lastXhr) { response(data); } }); } }); });

//試してみてください。この一つ

関連する問題