ひとりごと

新しい記事:[945]  古い記事:[943] 表示単位 :

ついったー[おとなり日記] かがみさん Y.Kumagaiさん

2003/09/20 (土)

・ 善意のあらし

ときどきうちのげすとぶっくに次のような書き込みがあります

はじめのころは特に気にしていなかったのですが、最近時々あるのでちょっと困ったものです。考えられる原因は下記のとおり

  1. 単なる嫌がらせ
  2. 日本語がわからない人がボタンをぽちぽち押してうっかり書き込んでしまった
  3. 普通にフォローを入れるつもりで書き始めて、『お名前』を入れた後リターンキーを押したことで勝手にSUBMITしてしまった(←Internet Explorerの仕様みたい)
う~ん、(1)と(2)はどうでもいいのですが、(3)のひとの行動もへんな書き込みで現れてしまってはちょっと申し訳ないので、なんか対策をする必要があります。

いちおう新規書き込みの場合はサーバー側で必須項目をチェックして空欄ならば書き込まれないようにしているのですが、フォロー記事の場合は名前以外の必須項目に何かしら入っていますから、名前を入れた後リターンキーを押すと間違いなく書き込まれてしまいます(^^;)。

で、単純に思いついた対策として、input type="submit"の代わりに

<form ~ onSubmit="return false">
<input type="button" onClick="this.form.submit()">
</form>
を使ってみました。この場合は他のテキストボックスでリターンキーを押しても無視されます。が、これも問題がありまして、『JavaScriptが有効でないと効果が無い(動かない)』のと『仕様に準じた方法というより*たまたま*期待通りの動作をしているだけでなんか気持ち悪い』なのです。うちのページの作成ポリシーのひとつは世の中のほとんど全てのブラウザで問題ないことですので、これはだめだめです。<noscript>中にsubmit行を入れて、buttonをdocument.write() で書くという方法もありかとおもいますが、構造を複雑にするとロクなことがないですからこれも却下。

うむむむ、サーバー側で処理しようにもsubmitボタン以外で飛んできたことをブラウザの違いにかかわらず検出する方法はあるのかな~? 難問です

# ちなみに、type=button は w3m でも動きました。どうして動くのだろう?(笑)

□ 関連記事

[つっこみ]

新しい記事:[945]  古い記事:[943] 表示単位 :
※このページへのリンクは自由です。リンクの方法については[つっこみ]で表示されるページの最後をごらんください。
たかたに(takatani@mars.dti.ne.jp)