###前提・実現したいこと
JavaScriptでreturnで値を返す場合の動作について
###発生している問題・エラーメッセージ
JavaScriptで聞きたいことがあります。今ボタンを押したら、入力チェックを行うようにしているのですが、変数を引数として渡して、その変数にいれた値を渡していましたが、別の人から「returnで値を渡して、その値で判断すればいい」と教えて頂きました。
しかし、それを試すと、関数で呼び出した際とif文の時で二度アラートが出ます。私のやり方が間違っているのか、これだとこの方法で合っているのかがよくわかりません。教えて頂けると幸いです。
###旧
//保存ボタンを押した時の処理 function insert\(\){ check = 0 ; input_check\(check\) ; if\(check == 0\){ work_select\(\) ; } } //入力チェックの処理 function input_check\(check\){ if\( work_kbn_input\.value == ""\){ alert\("作業区分は必須入力です。"\) ; check = 1 ; }else if\( work_name_input\.value == "" \){ alert\("作業区分名は必須入力です。"\) ; check = 1 ; }else if\( work_kbn_input\.value\.length != 5\){ alert\("作業区分に入力する文字数は5文字です。"\) ; check = 1 ; }else if\( work_kbn_input\.value\.match\(/\[\^0-9A-Z\]/\)\){ alert\("作業区分に半角英数字大文字以外は入力してはいけません。"\) ; check = 1 ; } }
###新
//保存ボタンを押した時の処理 function insert\(\){ check = 0 ; input_check\(\) ; // アラートがある関係でこうするとエラーアラートをもう一回出してしまう if\( input_check\(\) == 0 \){ work_select\(\) ; } } function input_check\(\){ if\( work_kbn_input\.value == ""\){ alert\("作業区分は必須入力です。"\) ; return 1 ; }else if\( work_name_input\.value == "" \){ alert\("作業区分名は必須入力です。"\) ; return 1 ; }else if\( work_kbn_input\.value\.length != 5\){ alert\("作業区分に入力する文字数は5文字です。"\) ; return 1 ; }else if\( work_kbn_input\.value\.match\(/\[\^0-9A-Z\]/\)\){ alert\("作業区分に半角英数字大文字以外は入力してはいけません。"\) ; return 1 ;; } return 0 ; }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。