submit()使うときはonsubmit使わない前提で?

JavaScriptのsubmit()を使うとonsubmitに拾われない。

type="submit"だとonsubmitが拾ってくれるので、フォーム送信の際の前処理を一括で書ける。けど、type="button"のonclickでsubmit()した場合、フォーム送信はしてくれるけど、onsubmitが拾ってくれないので、onsubmitに書いた統一前処理を無視。

type="button"を使わなければいいって事なのかな?使うにしてもそれはフォーム送信を必要とするイベントではない、と?

ひとまず、type="submit"に統一できるかどうかを検討しようかな。ただ、そうするとボタンの登場位置によってreturnキーを押したときのイベントがフォーム的に意味不明になりそうで怖い。onkeydownだかなんだかでreturnキーが押されたときの処理を考えろってこと?CSSでの並び制御も限界があるよね?

いっそ、type="button"で統一して、onsubmitを使わなければいいとか暴言吐いてみたくなる。自前で送信処理のメソッド(ラッパー)作って、前処理は外から登録(こういうのがフック?)するようにしたり?

あれですね、いろんなアプリを注意深く触ってみる事が重要ですね。この辺の実例がさっぱり思いつかない。。。


で、(同期処理での)フォーム送信後の安全策として画面のフリーズってやり過ぎかな?LightBoxみたいな感じで、画面に幕を覆って処理が完了する(レスポンスが返って来てページ遷移される)までは何も操作させない。『処理中』ってのがはっきりしていいかな、と。


思いつかないとか書いておきながら、MTでポストしたら。。。そうね、『処理中画面』に切り替わるんだよね。
GMailでは遷移中にウィンドウ(タブ)切り替えてると遷移後に元のウィンドウ(タブ)に切り替わるっぽいし。。。
観察力を養いましょう。。。

プロフィール

このブログ記事について

このページは、koshigoeが2006年9月23日 00:18に書いたブログ記事です。

ひとつ前のブログ記事は「MacPortsでapache入れ直すとconfも置き換わる?」です。

次のブログ記事は「PHP_CodeSnifferで遊ぶ」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。