1

(別の選択に基づいて) ajax で生成されたドロップダウンの正しいオプションを取得していますが、値が PHP スクリプトに投稿されていません。ただし、通常の HTML 要素 (ajax によって生成されたものではない) からのすべての値が表示されます。私は何が欠けていますか?

1. 私の scr_ajax.php スクリプトによって生成された HTML。- OK
$options は SQL クエリによって生成され、結果の選択は正確です。これは、drop_down_1 とほぼ同じです。)

<td>Drop Down 2</td>
<td></td>
<td>
<select name="drop_down_2" id="drop_down_2" value="" style="width:100%">
<option></option>
'.$options.'
</select>
</td>';

2. ajax で生成された HTML データの行き先- OK
2 番目のドロップダウンの上記の AJAX で生成されたフォーム要素を適切に受け取ります。):

... 
<tr id="ajaxContent">
</tr>
...

3. 通常の 'ol submit ボタン.. - Not OK
drop_down_1 は $_POST データでキャプチャできますが、drop_down_2 はキャプチャできません。私はここに何かが欠けていることを知っています..)

<input type="submit" value="Submit Request" />
4

2 に答える 2

1

日常のタスクにはjqueryの使用を開始することをお勧めします。

http://api.jquery.com/jQuery.ajax/

于 2012-11-24T20:56:48.833 に答える
0

[更新: 2012 年 11 月 25 日]
jQuery 送信リスナーを使用して非表示フィールドにデータを入力することで、HTML と AJAX で生成された投稿結果を組み合わせることができるようになりました。ただし、これは、より直接的なアプローチとは対照的に、より特別な手法/回避策のようです。

まず、非表示の入力要素を追加しました:

<input type="hidden" name="drop_down_2" id="drop_down_2" value="" />

2 番目に、jQuery 送信リスナーを追加しました。

<script type="text/javascript">
$(document).ready(function(){
    $("#form_name").submit(function() {
        var field = "drop_down_2";
        var param = document.getElementById(field).options[document.getElementById(field).selectedIndex].value;
        document.forms[0].elements[field].value = param;
    }); 
});
</script>

[更新: 2012 年 12 月 1 日] 適切な解決策には、シリアル化機能の習得が必要なようです。確認次第、追記させていただきます。

于 2012-12-02T06:28:17.727 に答える