アプリ版:「スタンプのみでお礼する」機能のリリースについて

フォームの内容をAjaxでPHPに投げています。
こちらの処理はうまく作れましたが、AjaxではブラウザのURLが変更されないので、
「 window.history.pushState(null, null, url);」
を利用してURLを変更したいと思います。

フォーム(GET)した内容をurlという変数に下記の形式で代入したいです。

求める結果
url='http://www.example.com/index?id=1&name=太郎';

PHPにフォームの内容を投げるため、

var postData = {};
$("#SearchForm :input").each(function () {
postData[$(this).attr("name")] = $(this).val();
});

というふうにしています。
PHP側で受け取った時は

array
(
[id] => 1
[name] => 太郎
)

という形になっています。
これをうまく使ってURLを作るか、またはJavaScriptやjQueryで簡単にURLを作れるのか、どちらの方法でも構いません。

ご回答よろしくお願い致します。

A 回答 (1件)

ajaxにjQuery(?)を使っているなら、serializeメソッドを利用するのが簡単かと。


もちろんphp側で作成して送り返しても良いですが・・・

http://api.jquery.com/serialize/
    • good
    • 0
この回答へのお礼

fujillin様

ご回答ありがとうございます。
serializeメソッドでうまくいきました。

serializeはAjaxでフォームの内容を投げる時にも使えるんですね。
Ajaxでフォームを作成する勉強をしているのですが、serializeで一気に問題が解決しました!

お礼日時:2015/08/20 22:22

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!