1

私はそのようなHTMLを持っています:

<form>
<div id="to_receive_data">
</div>
</form>

そのようなJavascript:

$("#to_receive_data").load("./loadable/a_form_to_load.php");

.load()が完了すると、DOMは次のように表示します。

<form>
</form>
<div id="to_receive_data">
<input name="data_from_ajax" value"help_i_need_a_form"/>
</div>

ご覧のとおり、divは要素の外に移動されました。

[送信]を押すと、アクションページにパラメータが表示されません。ここに私が気付いていない.load()の癖はありますか?

4

2 に答える 2

0

受信しているデータが有効であると仮定すると、このようなことを試してロード メソッドをバイパスできます。

$.ajax({
    url: "form.php",
    dataType: "text",
    type: "GET",
    success: function (data){
         //manually insert the page
         $("#to_receive_data").html(data);
    }
});
于 2012-09-27T02:03:39.063 に答える
0

.load() メソッドはサーバーからデータをロードし、返された HTML を一致した要素に配置します。.load() のような同様の機能をサポートする関数があります。以下の機能を参照してください。

  • $.ajax
  • $.post
  • $.get

上記のいずれかの機能を使用できます。

実装については、次の例を参照してください。

$.ajax({
  type: 'POST',
  url: './loadable/a_form_to_load.php',
  data: data,
  dataType: dataType,
  success: function (data){
     $("#to_receive_data").html(data);
  }
});

より単純化されたバージョンが必要な場合は、これも試してください。

$.post('./loadable/a_form_to_load.php', function(data) {
  $("#to_receive_data").html(data);
});

これがあなたを助けることを願っています。ご不明な点がございましたら、お気軽にお問い合わせください。ありがとう

于 2012-09-27T05:22:35.883 に答える