-6

新しいコントローラのインデックス関数にデータを投稿しながら、JQuery を使用して新しいページをブラウザにロードするにはどうすればよいですか?

window.location=url?foo=bar を考えていたのですが、URL に ?foo=bar が表示されないようにデータを投稿する方法はありますか?

いくつかのコメントは Ajax の使用を示唆していますが、実行中の現在のページを離れたり更新したりせずに処理することが ajax の本質ではないでしょうか?

4

1 に答える 1

1

使用する

   window.location.href

POSTリクエストを送信することはできません。

データフィールドを含むフォームタグを設定し、フォームのアクション属性をURLに設定し、メソッド属性をPOSTに設定してから、フォームタグでsubmitメソッドを呼び出す必要があります。

またはあなたは次の方法でトリックを行うことができます:

次のようなフォームをHTMLに追加します。

 <form style="display: hidden" action="/the/url" method="POST" id="form">
   <input type="hidden" id="var1" name="var1" value=""/>
   <input type="hidden" id="var2" name="var2" value=""/>
 </form>

JQueryを使用してこれらの値を入力します(もちろん、javascriptを使用して同様のことを行うこともできます)

 $("#var1").val(value1);
 $("#var2").val(value2);

そして最後にフォームを送信します

 $("#form").submit();

サーバー側では、var1とvar2をチェックすることで、送信したデータを取得できるはずです。詳細については、こちらを参照してください

お役に立てば幸いです。

于 2013-03-13T04:57:30.757 に答える