JQUERYによる画像投稿処理の成功/エラー処理が飛ばない件
色々なサイトに JQuery による画像のPOSTのサンプルはあるんですが、どれを実行しても、正常にエラー処理、成功処理に飛んでくれないので。まとめてみました
var data = {}; var imgdata = canvas1.toDataURL(); //canvas1の内容を変換 imgdata = imgdata.replace(/^data:image\/png;base64,/, ''); data.url = imgdata; data.fname= document.getElementsByName("FSAVE")[0].value; //ファイル名を渡す $.ajax({ url: 'savedr.php', //バックグラウンドで呼び出す先のURL type: 'POST', data: data, success: function(data){ document.getElementsByName("GSAVE")[0].value="保存成功"; // 成功時 // alert(data.length); // for(var i=0; i<data.length; i++){ // alert(data[i].fname); // } }, error: function(msg){ document.getElementsByName("GSAVE")[0].value="保存失敗"; // 失敗時 }, dataType: 'json' }); |
投稿処理をする JavaScript
<?php header('Content-Type: application/json'); $fileURL=$_POST['url']; |
呼び出してる savedr.php の内容
一応、これで書き込み失敗と成功が振り分けられるのが確認できた
なんか呼び出し先の処理ちゃんと書いてないサイトが多かったり、jsonp 呼んでたり json 呼んでたりするのに 処理が一緒だったり ってのが多かった ・ω・;
9/4追記
JQuery 1.4から追加された $.parseJSON は JQuery 1.6以降はつけなくても変換してくれるらしい ・ω・
Comments