MW WP formを使ってフォーム画面を作成しています。
現在、入力内容のエラーチェックとして
JS
1$(".btn_form_txt").on('click',function(){ //送信ボタンを押した際 2 error_flg = 0; 3 $(".required").removeClass("error"); //(2回目の送信ボタンを押した場合).requiredの.errorを一旦外す 4 $(".error_message").removeClass("open"); //同上 5 $(".btn_form_txt").prop( 'disabled', false );//ここが問題!!!! 6 7if($('#name1 .required').val() === ''){ 8 $('#name1 .required').addClass("error");//必須とされる項目.requiredに.errorをつけ赤字にする 9 $('#name1 .error_message').addClass("open");//隠れていた.errot_messageに.openをつけ表示されるようにする 10 error_flg = 1; 11 } 12 if(error_flg != 0){ 13 return false; 14 } 15 });
以上のようなJSを組んでいます。
が、1度目の送信時にエラーが出て、不足分を入力し直し2度目の送信ボタンを押した際に
なぜか送信ボタンにdisabledがついてしまいます。
5行目「ここが問題!」の記述をしても、外れません。
この問題に対してどのように対策をすれば良いか、ご教授ください。
追記:
プラグインのjsに
js
1var mw_wp_form_button_no_click = true; 2 $( '.mw_wp_form input[type="submit"]' ).click( function() { 3 var formElement = $( this ).closest( 'form' )[0]; 4 if ( formElement && formElement.checkValidity && !formElement.checkValidity() ) { 5 return; 6 } 7 if ( mw_wp_form_button_no_click ) { 8 mw_wp_form_button_no_click = false; 9 } else { 10 $( this ).prop( 'disabled', true ); 11 } 12 } ); 13} );
という記述があり、mw_wp_form_button_no_clickがdisabledをつけているのかと思います。
本来二重送信を防ぐためのものだと思うのですが、どのように対策すればよいでしょうか…
該当部分を削除すれば取り急ぎ解決はできると思うのですが、アップデートでまた元どおりですよね。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/09 12:37
2020/09/10 02:35