javascript
  • jquery
  • closures
  • 2012-01-09 9 views 0 likes 
    0

    JQueryオートコンプリートAJAXプラグインを次のように使用しています。オブジェクトプロパティの使用時に評価する

    $(document).ready(function() { 
        $("#myfield").autocomplete({ 
         serviceUrl:'autocomplete.asp?soc=' + $("#soc").val() 
        }); 
    }); 
    

    私はそれが$(「#のSOC」)の現在の値を反映するために変更したいのに対し、serviceURLのプロパティは、ページのロード時に一度だけ評価されて(私は仮定)ので、それは動作しません。

    何らかの閉鎖でこれを達成できますか、または$("#soc").change()のプロパティを手動で変更する必要がありますか?

    +0

    これは正確なコードですか? .valは結果を与えないので、結果を返すには.val()が必要です。 –

    +0

    私は '.val()'を使っていますが、疑問にコピーするのを忘れてしまいました。 – Flash

    +0

    あなたはどのようなオートコンプリートライブラリを使用していますか? jQueryUIライブラリにserviceURLが表示されません。 –

    答えて

    0

    文書からは、オプションがバインドされたオートコンプリートオブジェクトを作成したように見えます。したがって、#socが変更されている場合は、毎回serviceUrlを更新する必要があります。

    //create variable to store your autocomplete 
    var ac = $('#query').autocomplete(options); 
    //update it when #soc changes 
    $('#soc').change(function() { 
        ac.setOptions({ serviceUrl: 'autocomplete.asp?soc=' + $("#soc").val() }); 
    }); 
    

     関連する問題

    • 関連する問題はありません^_^