質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

2回答

4184閲覧

ステータスコード500、0の時エラーを返したい

退会済みユーザー

退会済みユーザー

総合スコア0

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2017/05/25 12:48

こんばんは、サーバーエラー500のときの処理と、そもそもサーバーが動いていないステータス0のときの処理を書き加えたいのですが、どこでなんの値を取って認識させてやればいいかわかりません。
デベロッパーツールを使ってデバックはしたのですが・・・・
よろしくお願いいたします

Jquery

1 var JSONdata = { 2 mail_address: $("#mail_address").val(), 3 password: $("#password").val() 4 }; 5 $.ajax({ 6 type : 'post', 7 url : 'http://127.0.0.1:5000/login', 8 data : JSON.stringify(JSONdata), 9 contentType: 'application/JSON', 10 dataType : 'JSON', 11 scriptCharset: 'utf-8', 12 }) 13 // トップページへ遷移 14 .done(function(result) { 15 location.href = '../html/ec_products.html' 16 }) 17 .fail(function(result) { 18 var message = '<p>' + result.responseJSON.message + '</p>' 19 var mail_address = '<p>' + result.responseJSON.mail_address + '</p>' 20 var password = '<p>' + result.responseJSON.password + '</p>' 21 $('#error_message').html(""); 22 $('<section id="error_message">' + 23 message + mail_address + password + 24 '</section>' ).appendTo('#error_message') 25 }); 26 }) 27}) 28

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ahodana

2017/05/25 13:33

サーバーが動いてないときにどう返せると思ってる
退会済みユーザー

退会済みユーザー

2017/05/25 13:49

ローカルで動かした時にフロントで返せませんか?
guest

回答2

0

例えばこんなかんじでどうでしょう?

javascript

1<script> 2$(function(){ 3 $('[type=button]').on('click',function(){ 4 var val=$(this).val(); 5 $.ajax({ 6 url: 'recv.php', 7 method: 'post', 8 data:{'err':val}, 9 success:function(data){ 10 console.log(data); 11 }, 12 error:function(xhr,status){ 13 console.log(xhr.status); 14 }, 15 }); 16 }); 17}); 18</script> 19<input type="button" value="403"> 20<input type="button" value="404"> 21<input type="button" value="500"> 22
  • recv.php

PHP

1$err=filter_input(INPUT_POST,"err"); 2if($err==404){ 3 header("HTTP/1.0 404 Not Found"); 4 exit; 5} 6if($err==500){ 7 header('HTTP/1.1 500 Internal Server Error'); 8 exit; 9} 10print "no error";

※404や500ボタンをおすと、そのステータスがxhr.statusで受けられる
403は設定していないので、エラーにならない

投稿2017/05/25 13:32

yambejp

総合スコア114829

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

.fail()メソッドの第1引数はjqXHRなので、statusプロパティを見ればいいかと思います。

jqXHR.fail(function( jqXHR, textStatus, errorThrown ) {});

jQuery.ajax() | jQuery API Documentation

The jQuery XMLHttpRequest (jqXHR) object returned by $.ajax() as of jQuery 1.5 is a superset of the browser's native XMLHttpRequest object.

jQuery.ajax() | jQuery API Documentation

The XMLHttpRequest.status property returns the numerical status code of the response of the XMLHttpRequest.

XMLHttpRequest.status - Web API インターフェイス | MDN

投稿2017/05/25 13:13

Lhankor_Mhy

総合スコア36104

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/05/25 16:11

ajaxの部分にステータスコード別の関数を組み込んで解決しました、ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問