jquery ajax 検証が失敗し、問題を解決するためにフォームが送信される_jquery
validationEngine は、フロントエンドのフォーム検証における多くの作業を軽減します。ほとんどの場合、validationEngine を使用していくつかの方法でフォームを検証します。
1 通常のフォーム送信を使用します。この場合、validationEngine が検証に失敗した場合、フォームは送信されません。2 ajax を使用してフォームを送信しますが、ajax 検証は使用しないでください。
このメソッドも比較的単純で、ajax リクエストを使用する前に検証に合格したかどうかを確認するだけです。例:
If(!$("form#ajaxForm").validationEngine("validate")) return ; $.ajax({
入力: 「POST」、
URL: $("#ajaxForm").attr("アクション"),
データ: $("#ajaxForm").serialize()、
データ型: "html"、
成功: function(data){
});
3 通常のフォームを使用して送信しますが、ajax 検証を使用します。この方法は、フォームを送信するときに、ajax 検証が通らなくてもフォームを送信できます。インターネットはソースコードを変更します。以下はスクリーンショットです:
。この方法は現在の状況では実行可能ですが、この変更方法自体は推奨されず、他の場所に影響を与える可能性があります。
true を返します。
};
//
function ajaxValidationCallback(status,form,json,options){
If(window.console){
コンソール.ログ(ステータス); };
If(ステータス === true){
alert("フォームは有効です!"); }
};
jQuery(ドキュメント).ready(function(){
jQuery("#formID").validationEngine({
ajaxFormValidation: true, //フォームの送信に Ajax を使用するかどうか
ajaxFormValidationMethod: 'post', //Ajax が送信するときのデータ送信方法を設定します
onAjaxFormComplete: ajaxValidationCallback, //Ajax 検証が完了した後のフォーム送信
onBeforeAjaxFormValidation: beforeCall //フォーム送信の検証に合格した後、Ajax 送信前のコールバック
});
});
beforeCall このメソッドは呼び出されないため、まだ使用できません
4 ajax を使用して、ajax を使用してフォームを検証および送信します。この方法はわかりにくく、上記のソース コードを変更する方法は使いにくいです。
ajax 検証を使用するフォーム タグにカスタム属性 control="userName,email" を追加します。属性値は、ajax を使用して検証されるコントロールの ID です (複数のコントロールはカンマで区切られます)。
コードをコピーします
検証が必要な各コントロールに、url (ajax リクエストのアドレス) と error (失敗した場合のプロンプト メッセージ) の 2 つの属性を追加しますコードをコピーします
JavaScript で 2 つのグローバル配列を宣言します
var controlId = new Array() //検証に失敗したコントロール ID を保存します
varerrors = new Array() //検証に失敗した場合のプロンプト メッセージを保存します
そのアイデアは、フォーム タグのコントロール属性の値を取得し (各コントロール ID をカンマで区切る)、ajax を使用してリクエストを走査し、検証が失敗した場合にコントロール ID とプロンプト情報を controlId に追加することです。およびエラー、およびプロンプト情報。フォームを送信するときに、controlId が空であるかどうかを確認します。空でない場合は、プロンプト情報がループで表示されます。
var ajaxForm2Controls = $("form#ajaxForm2Controls")
//フォームが送信されたとき
$(ajaxForm2Controls).submit(function() {
ajaxForm2Control(ajaxForm2Controls) ; false を返す ; });
//フォーカスを失ったときにコントロールを検証します
valControls(ajaxForm2Controls); });
フォーム送信方法:
コードをコピーします
false を返す ; }
If(!$(obj).validationEngine("validate")) return false; // Ajax 検証を使用しないコントロールを検証します (Ajax 検証されていないフィールドは通常どおり検証でき、失敗した場合は返されます)
$.ajax({
入力: 「POST」、
URL: $(obj).attr("アクション")、
データ: $(obj).serialize()、
データ型: "html"、
成功: function(data){
} });
}
フォーカス イベントをフォームに追加します
コードは次のとおりです:
//
形式で検証する必要があるコントロール 関数 valControls(ajaxForm2Controls) {
//Ajax 検証が必要なコントロールを取得
var controlStr = ajaxForm2Controls.attr("コントロール"); //属性が未定義の場合にリターン
If(typeof(controlsStr) === "未定義" ||controlsStr.length var コントロール = controlStr.split(/,/g) ; for(コントロール内の変数 i) {
//フォーカス離脱イベントを追加
$("#" コントロール[i]).blur(function() {
If($(this).val().length controlId.length = 0; errors.length = 0; //エラーメッセージ
var error = $(this).attr("error") ;
$.ajax({
入力: "GET"、
URL: $(this).attr("url"),
データ: $(this).serialize()、
データ型: "テキスト"、
成功: function(data){
If(data==="true") {
//検証が失敗した場合はエラーメッセージを配列に入れます
controlid.push(controls [i]); errors.push(error); アラート情報()
}); }) ; }
}
エラーメッセージ:
コードをコピー
コードは次のとおりです:
//ポップアップメッセージ
functionalertinfo() {
If(controlId.length > 0) {
for(controlId の変数 i) {
//validationEngine メソッドは、指定された ID のプロンプトをポップアップ表示します
// 使用法:$("#id").validationEngine("showPrompt","プロンプトコンテンツ","load"); //< Span style = "">この要素にプロンプトを作成します $("#" controlId[i]).validationEngine("showPrompt",errors[i], "error"); }
}
この方法では、3 番目または 4 番目の方法でフォームを送信するときに、送信する前に controlId を呼び出して値があるかどうかを確認するだけです。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQuery で PUT リクエストを送信する方法は、他のタイプのリクエストを送信する方法と似ていますが、いくつかの詳細とパラメータ設定に注意する必要があります。 PUT リクエストは通常、データベース内のデータの更新やサーバー上のファイルの更新など、リソースを更新するために使用されます。以下は、jQuery の PUT リクエスト メソッドを使用した具体的なコード例です。まず、jQuery ライブラリ ファイルが含まれていることを確認してから、$.ajax({u

PHP と Ajax を使用してオートコンプリート候補エンジンを構築します。 サーバー側スクリプト: Ajax リクエストを処理し、候補を返します (autocomplete.php)。クライアント スクリプト: Ajax リクエストを送信し、提案を表示します (autocomplete.js)。実際のケース: HTML ページにスクリプトを組み込み、検索入力要素の識別子を指定します。

Ajax を使用して PHP メソッドから変数を取得することは、Web 開発では一般的なシナリオであり、Ajax を使用すると、データを更新せずにページを動的に取得できます。この記事では、Ajax を使用して PHP メソッドから変数を取得する方法と、具体的なコード例を紹介します。まず、Ajax リクエストを処理し、必要な変数を返すための PHP ファイルを作成する必要があります。以下は、単純な PHP ファイル getData.php のサンプル コードです。

タイトル: jQuery ヒント: ページ上のすべての a タグのテキストをすばやく変更する Web 開発では、ページ上の要素を変更したり操作したりする必要がよくあります。 jQuery を使用する場合、ページ内のすべての a タグのテキスト コンテンツを一度に変更する必要がある場合があります。これにより、時間と労力を節約できます。以下では、jQuery を使用してページ上のすべての a タグのテキストをすばやく変更する方法と、具体的なコード例を紹介します。まず、jQuery ライブラリ ファイルを導入し、次のコードがページに導入されていることを確認する必要があります: <

タイトル: jQuery を使用して、すべての a タグのテキスト コンテンツを変更します。 jQuery は、DOM 操作を処理するために広く使用されている人気のある JavaScript ライブラリです。 Web 開発では、ページ上のリンク タグ (タグ) のテキスト コンテンツを変更する必要が生じることがよくあります。この記事では、この目標を達成するために jQuery を使用する方法を説明し、具体的なコード例を示します。まず、jQuery ライブラリをページに導入する必要があります。 HTML ファイルに次のコードを追加します。

Ajax (非同期 JavaScript および XML) を使用すると、ページをリロードせずに動的コンテンツを追加できます。 PHP と Ajax を使用すると、製品リストを動的にロードできます。HTML はコンテナ要素を含むページを作成し、Ajax リクエストはロード後に要素にデータを追加します。 JavaScript は Ajax を使用して XMLHttpRequest を通じてサーバーにリクエストを送信し、サーバーから JSON 形式で商品データを取得します。 PHP は MySQL を使用してデータベースから製品データをクエリし、それを JSON 形式にエンコードします。 JavaScript は JSON データを解析し、ページ コンテナーに表示します。ボタンをクリックすると、製品リストをロードするための Ajax リクエストがトリガーされます。

jQuery は、Web ページでの DOM 操作やイベント処理を処理するために広く使用されている人気のある JavaScript ライブラリです。 jQueryではeq()メソッドを利用して指定したインデックス位置の要素を選択しますが、具体的な使い方と応用シーンは以下の通りです。 jQuery では、 eq() メソッドは、指定されたインデックス位置にある要素を選択します。インデックス位置は 0 からカウントされます。つまり、最初の要素のインデックスは 0、2 番目の要素のインデックスは 1 などとなります。 eq() メソッドの構文は次のとおりです。 $("s

jQuery 要素に特定の属性があるかどうかを確認するにはどうすればよいですか? jQuery を使用して DOM 要素を操作する場合、要素に特定の属性があるかどうかを判断する必要がある状況がよく発生します。この場合、jQuery が提供するメソッドを使用してこの関数を簡単に実装できます。以下では、jQuery 要素が特定の属性を持つかどうかを判断するために一般的に使用される 2 つの方法を紹介し、具体的なコード例を添付します。方法 1: attr() メソッドと typeof 演算子 // を使用して、要素に特定の属性があるかどうかを判断します
