Form.serializeで複数の送信ボタン

2008/8/19 [17:40:57] (火) 天気

javascriptなんてわからないし、わからないから好かんのだけど、どうしても使わないと読書SNSのリニューアルが一からやり直しになってしまう。

なので、しかたなくあれこれごそごそと。

Ajaxでフォーム送信、このとき、フォームの中に複数の送信ボタンがあることはままよくある話だ。だけど、prototype.jsのForm.serializeだと押してもいないボタンのnameとvalueをパラメータに追加してくれる。

てことは。action=postもaction=deleteもパラメータに入るのだ。入力と削除なんて物騒なのがパラメータに同居して混じるのは困る。ぐーぐるさまに詣でる。http://d.hatena.ne.jp/susie-t/20060911/1157959024 の記事で助かった。

buttonタグで、nameを空にしておいてvalueの方にだけ入力とか削除とかいれておく。こうするとForm.serializeでパラメータにはこのボタンは入ってこない。受け側のjavascriptの関数にthisでクリックしたボタンのオブジェクトを引き渡し、パラメータに &action=obj.value(入力とか削除とか) を追加。actionなんて決め打ちするのはちょっとアレな匂いがするし、動作を決めるところをjavascriptなんかで作るのは危険なにおいもする。

とはいえ、こんなところでひっかかってるヒマもないんで、とりあえず採用。危険なところは受け側でガードを固める。

javascriptは便利なのは確かなんだけどねぇ。


どうにか、本のメモに関してはこれでやっとメドがついた、かなぁ。(まだデータベース側での設定を決めなきゃいけないけど)これ以外の書き込み更新系はAjaxを使わないフツーのページ。デバッグもやりやすいんでストレスも少ない、かな。


まともな本を読めていないってのに、「検索連動型広告を成功に導くSEM戦略」とか「ロングテールキーワードをねらえ!Googleアドワーズ&アナリティクス活用テクニック」とかロクでもない本を買ってしまう。つくづく、実体のない虚業だよなぁ、とうんざり、ていうかやるぞという気にまるでならない。「おもしろい」匂いがしないんだよなぁ。なんか無理やり商売にしようとしてないか。

生活するって大変だわ。


[17:44:49]

ちなみに、雑記帖リニューアル後、タイトルがわりと具体的なものになっているのは。SEO対策の実験ていうか。一応ブログのように、個々のタイトルをh3タグにしてみたんで、無意味なものが並ぶのもナニだなぁ、と。思いつくようだったら、タイトルは具体的なものにしてみよう、ということで。


パーフェクトJavaScript (PERFECT SERIES 4)

『パーフェクトJavaScript (PERFECT SERIES 4)』

井上 誠一郎

[更新]2026-02-04 09:43:56

Ajaxはわかりにくいんだ

2008/8/17 [22:50:18] (日) 天気

今日はヨメが出かけたんで、いちんちぼーっと部屋でごろごろ。身体がだるくてぼわぁっと力もはいらず。鋼の錬金術師とか大きく振りかぶってとかアカギをダラダラかけて眺めて過ごすジダラクなテイタラク。夕方からタンカレーをいただきながらイネムリこく。

うーむ。アカギかっちょよすぎだろ。


で、いくらなんでもそれじゃ時間がもったいないんで、ちらっとだけ中断している読書SNSのソースを。やっぱりAjaxのフォームがうまくいかんなぁ。ここが片付かないとリニューアルは難しい。Ajaxを使わないでやるなら、今度はページの設計を見直しとなるんで、それはまたリニューアルやり直しとなってしまう。

Ajaxは欲しいところだけを持ってくるんで動作も軽いし直感的なのでいいんだけど、チェックが面倒なのだ。javascriptでalertを入れて、サーバー側perlでprint文入れて、2重にチェック。そうやったところで、Ajaxで表示したコンテナは「ソース表示」じゃ出てこないので、ナニが起こってるのかわかりにくい。デバッグの効率が非常によろしくない。

こりゃちょっとリニューアル予定はさらに延期、ということになりそうだ。…ほんとは、今月にはリニューアルしたかったんだけど。


にしても、スコールのような雨の都内だ。日本はいつのまに亜熱帯になったんだろう。


[08/18 09:50:11]

この雑記帖「RELOAD」とか「ひまつぶし雑記帖」をクリックして出てくる右側の小ネタ類(ケータイメモとかリンクとかお言葉データベースとか)がAjaxを使ったコンテナ。この部分だけを読み込むので全体の動作は確かに軽い…んだけど、やっぱ面倒。


今日はまた蒸し蒸しと残暑厳しいなぁ。

[更新]2026-02-04 09:44:20

裏技スタイルシート…

2008/8/7 [22:24:45] (木) 天気

高さの異なるカラムを揃えるスタイルシートというのがあって、見てみたら、padding-bottom: 32768px; と margin-bottom: -32768px; とoverflow:hidden; だそうだ。intめいっぱいか、という妙な数字だけど、ほんとにそんな意味なのか疑問。

でもなあ、こんなのがスタイルシートに入ってると、後々ハマるもとになるだろう。いまでも、その場目先のリクエストにこたえるために、アンダースコアの要素だなんだと、妙なものがどっさり入ってしまっていて、ちょっとした変更や修正のたびに大騒ぎ。HTMLにstyleを埋め込むのを堪えたので、cssだけでいいとはいえ、「なんでここのmarginがつまらないんだ」「だれ、ここのpadding」と、毎度右往左往で吐血だ。


妙なものが混じる奇怪なcssはうんざりなので、最近のウチのリニューアルは、わかりやすいhtmlとシンプルなcssを目指してみた。

(ブログパッケージのMTもスクリプトの構成なんかは素直に勉強になるな、と思ったけど、cssの方はクラス名があれこれてんこもりで見通しが悪くてよくわからなかった)


雑記帖とお言葉データベースさえリニューアルしてしまえば、ウチはほぼ終了。更新のない一部のページを除いてUTF8に移行できたし。


さて、今日はもう帰るか。ちっ。


[08/07 22:47:03]

もともとリニューアルの目的のひとつにzaurusでも使えるように、てのがあったんだ。


perl5.8.8、mod_perl2前提で作っちゃったんで、perl5.6.0で普通に動くcgi版でも考えてみるかしらん。一番の問題は、utf8。5.6.0だとJcodeを使えばutf8も扱えるはず…うーん、あちこちに必要で、書き換えるのはかなり面倒くさい、か。そのうち。まだやる気があったら、だな。


すべての人に知っておいてほしい スタイルシートデザインの基本原則

『すべての人に知っておいてほしい スタイルシートデザインの基本原則』

秋葉秀樹

[更新]2026-02-04 09:44:39

暑くてバテ気味

2008/7/24 [00:35:23] (木) 天気

仕事がらみのサイトリニューアルはなんとかかっこうがついた、ような気がする。IE6でカラム落ちが発覚したページがあったんで慌てて対応したけどね。でも、大のおとなが数人がかり、金をもらって作ったという見栄え出来栄えにはなったなぁ。


んで、まったくひとりの素人芸の雑記帖に問い合わせをいただいて驚いた。だけど、すみません。今までの雑記帖はもう4年もメンテ・更新もありません。CGIページもリンクを切って、サポートもできていません。あしからずご了承ください。

ほんと、ココのリニューアルをしたのがつい先日で、それもひとに使ってもらうためのカスタマイズ機能などをばっさり切った単純なものにしたばかりで、まさかそのタイミングでお問い合わせをいただくとは…。



あ。スパム対策してなかった、とか、javascriptなんて使いたくないよな、とか、今どきフツー背景に回すよね、とか、あれこれあるんで、さらにちょっと修正。昨日も書いたようにレスポンスが予想以上に良いんで、クライアント側でごそごそしてもらう必要を感じられず、それなら、もともとわからん&好かんjavascriptなんて使う意味もないんでいちいちページ遷移が起こるレガシーな(=古臭い)仕組みに変更。ajaxに未対応のzaurus(Opera)にはやさしいページになった。


にしても暑い。銭湯の脱衣所のような湿気と気温にうんざり。とか書いてたら、地震におののく。



[07/24 13:43:59]

IEで、コンテナの中のひとつの要素が飛び出してるのを発見。前にもあったんだよなぁ。それも最後のひとつだけが、ポロっと漏れてるというか飛び出してるというか。

検索しまくり。

HTMLに書かれたコメントが原因になる???という記事に、眉唾しながら直前に現れるコメントを削除してみたら、すんなり収まるようになった!改行が影響したり、コメントが影響したり、勘弁してくりゃれ。

[更新]2026-02-04 09:49:08

進歩もなく

2008/7/22 [22:57:27] (火) 天気

日本語は素直に幅がきたら、幅に合わせて折り返すというのに、英語は我関せず。わがままなことに幅に合わせようとしない。ニッポンジンとガイジンの図、だ。なんじゃこいつ、とむかついたので

join("", str_split($alpha,1))

を仕込む。独自拡張で非標準タグだけど、IEとFireFoxさえ対応してればこのさいOKだ。ちっ。


こうやって雑記をリニューアルしてみて、そんなに重くないんでちょっと感心。レスポンスのために今までちまちまデータを小分けにして、とかやってたのが馬鹿らしい。たかが3Mちょっとのテキストデータ、丸ごと全部読み込んでもたいしたことじゃない。過去約10年で3Mちょっと、今後10年やっても合わせて6Mほど。いや10年続くかどうかはともかく。データベースも使わず、Jcode以外はperl5.8標準のモジュールしか使ってないチョー簡単な設計。できることは、こうやって文字を入力する、たまに画像をアップロードする、だけ。歳くって頭のほうがあやしくなっても使うだけは使える。こんな簡単・単純なものでも重宝しそうだゼ。


そういや、歯医者に予約をいれたら土曜は駄目だと。大東京歯科大学病院は患者の都合なんて考慮してくれんのだなあ。地元の歯医者はヤブだし、まともな歯医者を探さないといかん。


にしても。1998年からまったく進歩のない記録に驚いてしまう。なんとかしないと向こう10年が、かなり、心配。…って、たぶん10年後も、なんとかしないと、とか言ってる自分が見えるようだ。うううむ。

[更新]2026-02-04 09:49:35

<<2026/3>>
       
1234567
891011121314
15161718192021
22232425262728
293031

【最近の10件】

日常読書映画アニメゲーム健康料理グルメカメラ写真ネタ仕事パソコンインターネットperlEPUB3電子書籍ActivityPub還暦生活
検索: