初めて質問します。
現在、Jquery Validation Engine 2.6.2にてフォームチェックを実装しています。
その中で、ajax call を使用しMysqlDBにデータ(userid)があるかどうかをチェックしているフォームがあります。
htmlフォームは以下のように設定
<script> $(document).on("click",'.confirm',function(e){ e.preventDefault(); if(! $('form').validationEngine('validate',{promptPosition:"bottomLeft"})) { return false; } //フォームに問題がなければ次の処理 </script> <form> //その他フォーム省略 <input type="text" class="validate[required,custom[onlyLetterNumber],ajax[ajaxIdCheck]]" name="userid"> <div class="confirm">確認する</div> </form>
validationEngine-ja,jsに以下を追記
"ajaxIdCheck": { "url": "useridcheck.php", "alertTextOk": "* OK", "alertText": "* このユーザーIDは使用されています", "alertTextLoad": "* チェック中..." },
useridcheck.phpは以下のように記述
// ユーザーID重複はエラーとする $msg = "このユーザーIDは使用されています。"; $status = false; if(ユーザーID重複していなければ){ $msg = "OK"; $status =true; } $a = array($_GET['fieldId'], $status, $msg); echo json_encode($a);
結論から言いますとステータスのtrue falseの判定は正常にとれています。
が、ajaxIdCheckの部分で[OK]という表示が出て、次の処理に進みません。
validationEngine.js本体の中身も見てみましたがどこなのかわからずに質問しました。
よろしくお願いいたします。
回答1件