2

私は Web アプリに取り組んでおり、2 つのドロップダウン リストを含むフォームをコーディングしようとしています。2 番目のドロップダウンのリストは、最初のドロップダウンからの選択に依存します。タスク自体はそれほど複雑ではありませんが、最初の選択が行われたら、データベース呼び出しを行って 2 番目のドロップダウンのデータを取得する必要があります。これは私が苦労しているところです。どちらのリストも、実際にはデータベースから取り込まれています。

私はPythonスクリプトでこれに取り組んでおり、onChange JavaScript関数を使用してこれを実行しようとしています。Web アプリは Zope で構築されており、ページ テンプレートは Python スクリプトと共にオプションとして使用できます。

4

2 に答える 2

1

ここでは、Ajax と JavaScript を組み合わせて使用​​する必要があります。選択ドロップダウンの Onchange イベントは、javascript 関数を呼び出します。この JavaScript 関数は、実際にデータベースをヒットさせ、javascript 変数で応答を返す Python スクリプトに ajax 要求を行います。この JavaScript 変数を使用すると、DOM を編集し、2 番目の選択ボックスの html を設定できます。

これからヒントを得ることができるかどうか見てみましょう: http://www.satya-weblog.com/2007/04/dynamically-populate-select-list-by.html

于 2010-05-11T20:21:10.907 に答える
0

それはまさに私がしたことです。以下は私が思いついたjavascript関数です。OnChange で getOptions を呼び出すと、pythonScript が 2 番目のドロップダウン リストを作成します。このドロップダウンに必要なデータを取得するためにパラメーターを渡すことができます。ありがとう!

  function getOptions() {
    var code = 'code=' + $("dropdown1").getValue();
    var myAjax = new Ajax.Updater('dropdown2', './pythonScript', { method: 'get', parameters: code });
  }
于 2010-05-12T12:53:15.937 に答える