私はオプションの画像アップロードフィールドを含むかなり単純なフォームを持っています。画像データのアップロードには時間がかかりますので、フォームボタン(CSSで背景画像として表示されます)を使用して、フォームがデータを提出する過程にあることをユーザーに知らせることができます複数のクリックを防止するためにボタンを無効にします。ここでフォームの送信に失敗した場合にボタンIDを戻す
は、フォームの関連する部分である:
<input name="formsubmit" type="submit" id="button" value="Submit!">
私はjQueryの次のビットをつなぎ合わせるために管理している:
jQuery('#formid').submit(function() {
jQuery('#button').attr('id', 'button-post');
jQuery('#button').attr('disabled','disabled');
});
これは私が必要とするまさにありません。問題は、私はjQueryインライン検証プラグイン(Link)を使用しています。フォームにアクセスしてフィールドを入力せずにフォームを送信し、送信ボタンをクリックすると、ボタンのIDが変更されます。必要なフィールドが記入されていないため返品エラーを使用すると、ボタンのid属性は元のidに戻りません。
方法はありますか?おそらく、フォームが実際に正常に提出されたかどうか、または他の必須フィールドのいずれかが一定の長さを超えているかどうかをチェックする方法でしょうか?
ありがとうございました。
ソリューションのおかげで、実装するのは簡単でした。ただし、フォームの処理中または正常に送信された時点で、ボタンのIDは変更されません。バリデーションはうまく動作し、ボタンIDは以前と変わりはありません。何か案は?助けてくれてありがとう。 – Derek
私はまだこれを使いこなしています。これは、 'if($( "#formid")。validationEngine(' validate '))のようなものです。 – Derek
確かに、私は約1年で検証エンジンを見ていませんでしたが、私はそのように呼び出すことのできる検証メソッドがあることを覚えています。代わりに検証エンジン自体に接続できるコールバックがあるかもしれませんが、それを調べましたか? – ctide