
お世話になります。
jQueryを使用します。
Handsontableを使いたいと思います。
表に入力した内容をperlのCGIにデータ送信して、処理をしたいのですが
どのようにすればいいのかがわからずにいます。
http://handsontable.com/demo/ajax.html
こちらにサンプルがあるのですが、saveのときの処理がよくわかりません。
$.ajax の data にただの文字列を設定すれば、CGIでの受け取り方がわかるのですが、
表のデータ?(handsontable.getData()の部分)の場合、CGIではどのように
受け取れば良いのでしょうか?
$.ajax({
url: "netaut2.cgi",
data: {"data": "abcde"},
dataType: 'json',
type: 'POST',
:
}
↑こうであれば、CGI側は
$form = new CGI;
$val = $form->param('data');
このようにして$valに"abcde"とデータが取れますが、
var json_data = [
{"name" : "Taro", "age" : 19},
{"name" : "Hana", "age" : 25}
];
$.ajax({
url: "netaut2.cgi",
data: json_data,
dataType: 'json',
type: 'POST',
:
}
のようにした場合がわかりません。
宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
use CGI;
use JSON qw/encode_json decode_json/;
my $query = CGI->new;
my $data = $query->param('POSTDATA'); <-今回の質問の肝はおそらくこちらです
my $json_array = $json->decode( $data ); <-JSONデータをPerlで解釈できるように変換
$json_arrayから、扱いたいデータが扱えると思います。
全て英語ですが…参考URLです。
https://metacpan.org/pod/CGI#HANDLING-NON-URLENC … CGI.pmのparam('POSTDATA')について
http://stackoverflow.com/questions/908113/how-ca …
http://stackoverflow.com/questions/15899616/jque …
JSONモジュールについて
http://d.hatena.ne.jp/perlcodesample/20100427/12 …
アドバイス頂き、ありがとうございます。
どうしても$dataに値が入ってこないのです…
使い方を間違えているのかもしれません。
<STDIN>だと、一列で全データが入ってきます。(URIエンコードされた状態)
もう少し試してみます。
ありがとうございました。
No.3
- 回答日時:
大分時間が経ってますが、jQueryはその形式をサポートしていないようです。
http://api.jquery.com/jQuery.ajax/
dataのフォーマットはPlainObject or Stringとなっています。
配列はPlainObjectではありませんが、
nameプロパティとvalueプロパティが含まれるオブジェクトの配列であれば、name=valueというデータとして送信できるようです。これは非公式の書き方かもしれません。
[
{"name": "name1", "value": "value1"},
{"name": "name2", "value": "value2"}
]
name1=value1&name2=value2
ご参考まで。
遅くなり、申し訳ありません。
アドバイス、ありがとうございます。
簡単に取得できる方法はないのですね。
name=valueの羅列で入ってきたデータを解析して使用するようにしました。
ありがとうございました。
No.2
- 回答日時:
拙作では$.ajaxではcontentTypeを指定しているのですが、この指定はありますか?
$.ajax {
type: "POST",
contentType: "application/json",
・・・
以下のURLを見る限り、必要そうなので・・・
http://tarotaro.jugem.cc/?eid=1542
遅くなり、申し訳ありません。
contentTypeの指定は無かったので追加してみたのですが、
変化がありませんでした。
アドバイスありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PDFを(htmlのように)無限に縦...
-
正規表現で、特定の文字列を含...
-
php コールバック関数
-
ナイトボットのAliasについて
-
これってなんの電話かわかりま...
-
VBAでクイズゲームの作り方
-
以下のURL入れますか?皆さんは↓
-
画像のドットの部分が抜けてい...
-
Chinapost こよパズルどう動か...
-
非同期通信で掲示板を作る際の...
-
非同期通信を使うタイミングが...
-
PYTHONのtkinterについて
-
Pythonのtkinterについて
-
Pythonを勉強する道のり
-
Pythonを無料(安価)で学ぶ方...
-
RPA(PowerAutomate)の実装について
-
ワードでA3横の画面にして、文...
-
入力フォームの値をQRコードで...
-
課題なのですがどなたかコード...
-
自作の地図をグーグルマップの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavascriptからPHPへのAjax通信...
-
jQuery を外部ファイルから呼び...
-
jQueryのblockUIをformのボタン...
-
jQueryで外部テキストファイル...
-
jquery × php × mysql 非同期で...
-
Ajaxでのチャットについて教え...
-
ajaxでPHPにPOST送信して結果デ...
-
JQueryの変数の扱いで弱ってい...
-
Ajax・jQueryでGET時にIE...
-
jQueryを使いformでsubmitした...
-
Ajax・jQueryでGETとPOSTする方法
-
JSONをperlで受け取る方法
-
ajax + PHPによるエラーの返し...
-
Ajax サーバーに負荷かかります...
-
ajaxからphpにpsotしたときの日...
-
Win11 へのRufus と レジストリ...
-
階層別の組織図の自動作成について
-
JavaScriptでtabindexの変更っ...
-
Javascriptを使ってQRコード読...
-
同一ページ移動時ハンバーガー...
おすすめ情報