つっこみ

つっこみ欄にコメントを記載して[つっこむ]ボタンを押してください。
お名前欄の記載は省略できます。

お名前 :
←ここのテキストボックスはスパム対策用なので何も入力しないでください
つっこみ :

[キャンセル]


つっこみ先の記事

・ 善意のあらし

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

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

  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 でも動きました。どうして動くのだろう?(笑)

■この記事への permanent link URL(下にいくほどファイルサイズが大きくなります)
  http://toriyu.jp/hitorigoto/id944.html
  http://toriyu.jp/hitorigoto/2003-09-20.html (1日分)
  http://toriyu.jp/hitorigoto/2003-09.html#id944 (1ヶ月分)