jQueryから送信($.ajax)した配列をAmon2(Perl)で受け取る。
2014年11月7日
jQueryからpostされた配列をAmon2で受け取ります。
ま、タイトルのまんまですね。
jsの方はざっくりですが、下記のような感じ。
var hoge = [1,2,3]; $.ajax({ type: "POST", url: "/myapp/test", data: { hoge : hoge } });
で、Amon2(Perl)側は下記のような感じ。
sub test { my ( $class, $c ) = @_; my @hoges = $c->req->parameters->get_all('hoge[]'); # @hoges = (1,2,3); $c->render('index.tx'); }
特に特記することはそんなにないんですが、受け取る時はhoge[]のように後に[]が付く。
[]をつけたくない場合は、、
$.ajax({ type: "POST", url: "/myapp/test", data: { hoge : hoge }, traditional: true });
てな感じで、traditional: trueのオプションをつけると後に[]がつかなくなる。