1

こんにちは仲間のプログラマー。私はコミュニティの支援が必要です:)

私は.txtファイルをロードし、最初の選択肢に関連する2つの動的ドロップダウンを構築するjquery関数を持つ3つのドロップダウンを持つphpフォームを持っています。

最初のユーザーがオプションを選択 (スクリプトにハードコーディング) - 通常のドロップダウン。次に、スクリプトが他の選択肢を制御します。

スクリプトはこちら。私の質問の詳細は以下のとおりです

<script type="text/javascript">
$(function() {

$("#text-one").change(function() {

$.get("/textdata2/podgrupa/" + $(this).val() + ".txt", function(data) {
  $('#text-two').html('<select onChange="load_subcategory(this.value)" name="podkategorija">'+data+'</select>');
    if($("#text-two select").val()!='base'){
        $.get("/textdata2/podkategorija/" + $("#text-two select").val() + ".txt", function(data) {
          $('#text-three').html('<select name="podgrupa">'+data+'</select>');
        }).fail(function() { 
            alert("Missing file: /textdata2/podkategorija/" + $("#text-two select").val() + ".txt");
            $("#text-three").html('<select name="podgrupa"><option>Odaberite rubriku</option></select>') ;
        });
    }else
        $("#text-three").html('<select name="podgrupa"><option>Odaberite rubriku</option></select>');

});


});
});

function load_subcategory(val){
    $.get("/textdata2/podkategorija/" + val + ".txt", function(data) {
      $('#text-three').html('<select name="podgrupa">'+data+'</select>');
    }).fail(function() { 
            alert("Missing file: /textdata2/podkategorija/" + val + ".txt");
            $("#text-three").html('<select name="podgrupa"><option>Odaberite rubriku</option></select>') 
        });

}
</script>

podgrupa フォルダーの 1 つの txt ファイルの例

<option value="360">Iznajmljivanje</option>
<option value="361">Unajmljivanje</option>
<option value="456">Cimeri</option>

podkategorija フォルダーからの 1 つの txt ファイルの例 (値によって、podgrupa フォルダーを調べるドロップダウンの選択肢に関連付けられています)

<option value="120">regija 051</option>                    
<option value="121">regija 052</option>                    
<option value="122">ostalo</option> 

フォームがユーザーが選択したデータを投稿すると、タグから値が書き込まれます。これらの値により、jquery スクリプトは、どの選択肢が他の選択肢に接続されているかを認識します。

例: ユーザーが選択した場合: Rooms (最初のハードコードされたドロップダウンから - コードはオプション値の 155)、スクリプトは自動的に 2 番目のドロップダウンに txt ファイル (podgrupa) からの選択肢をロードし、ユーザーはそれらの選択肢から選択します (たとえば、Cimeri - 456 ) 2 番目のドロップダウン (podgrupa) で、スクリプトは 2 番目の選択に関連する 3 番目のドロップダウン値 (podkategorija) を読み込みます。次に、ユーザーはその 3 番目のドロップダウンから値を選択します (例: regija 052 - 121)

フォームの送信後、これらの値は php によって書き込まれます: 155、456、121。

ただし、2 番目 (456) と 3 番目 (121) の選択肢に異なる値を書き込む必要があります。- ユーザーが例からこれらの選択肢を選択した場合、2 番目の値は「3」、3 番目の値は「2」を書き込む必要があります。ご覧のとおり、これらの異なる値は、txt ファイルで選択した位置と同じです。

そのようなことを達成できますか?多分追加のIDで?または、これらの値 (456、121) が ID であり、値が txt ファイルの順序 (1,2,3...) である必要があります。

私が達成したいことを理解していただければ幸いです:)

事前に助けてくれてありがとう

4

1 に答える 1

0

121 や 456 などの単一の値だけでなく、各オプションに関するより多くの情報を添付できます。カスタム属性を各オプション タグに添付するか、jQuery のデータ メソッドを使用して、役立つと思われる任意のデータを各オプションに保存することもできます。これは、データアプローチを使用して私が話していることの実例です: http://jsfiddle.net/qC6HK/

var dynamicDropdown = $('<select id="dropdown">');
var option1 = $('<option value="123">Option 1 Text</option');
dynamicDropdown.append(option1);
option1.data('coolData', 'the value of coolData');

それが役立つことを願っています。

アンディ

于 2013-09-04T18:19:20.987 に答える