Form.serializeで複数の送信ボタン
javascriptなんてわからないし、わからないから好かんのだけど、どうしても使わないと読書SNSのリニューアルが一からやり直しになってしまう。
なので、しかたなくあれこれごそごそと。
Ajaxでフォーム送信、このとき、フォームの中に複数の送信ボタンがあることはままよくある話だ。だけど、prototype.jsのForm.serializeだと押してもいないボタンのnameとvalueをパラメータに追加してくれる。
てことは。action=postもaction=deleteもパラメータに入るのだ。入力と削除なんて物騒なのがパラメータに同居して混じるのは困る。ぐーぐるさまに詣でる。https://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タグにしてみたんで、無意味なものが並ぶのもナニだなぁ、と。思いつくようだったら、タイトルは具体的なものにしてみよう、ということで。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
Ajaxはわかりにくいんだ
今日はヨメが出かけたんで、いちんちぼーっと部屋でごろごろ。身体がだるくてぼわぁっと力もはいらず。鋼の錬金術師とか大きく振りかぶってとかアカギをダラダラかけて眺めて過ごすジダラクなテイタラク。夕方からタンカレーをいただきながらイネムリこく。
うーむ。アカギかっちょよすぎだろ。
で、いくらなんでもそれじゃ時間がもったいないんで、ちらっとだけ中断している読書SNSのソースを。やっぱりAjaxのフォームがうまくいかんなぁ。ここが片付かないとリニューアルは難しい。Ajaxを使わないでやるなら、今度はページの設計を見直しとなるんで、それはまたリニューアルやり直しとなってしまう。
Ajaxは欲しいところだけを持ってくるんで動作も軽いし直感的なのでいいんだけど、チェックが面倒なのだ。javascriptでalertを入れて、サーバー側perlでprint文入れて、2重にチェック。そうやったところで、Ajaxで表示したコンテナは「ソース表示」じゃ出てこないので、ナニが起こってるのかわかりにくい。デバッグの効率が非常によろしくない。
こりゃちょっとリニューアル予定はさらに延期、ということになりそうだ。…ほんとは、今月にはリニューアルしたかったんだけど。
にしても、スコールのような雨の都内だ。日本はいつのまに亜熱帯になったんだろう。
[08/18 09:50:11]
→
この雑記帖「RELOAD」とか「ひまつぶし雑記帖」をクリックして出てくる右側の小ネタ類(ケータイメモとかリンクとかお言葉データベースとか)がAjaxを使ったコンテナ。この部分だけを読み込むので全体の動作は確かに軽い…んだけど、やっぱ面倒。
今日はまた蒸し蒸しと残暑厳しいなぁ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
簡単が一番だ
世間はすっかり夏休みモードなのか。電車がガラガラで親子連れも目立つ。
sql一発でデータを引っ張り出すのがなにかと便利で安全、なのはよくわかる。でも、副問い合わせが入って重くなるんだったら、そこはスクリプトを挟んだほうが良くないか、と。あいかわらずSQLとスクリプトの関係というか、よくわかってないんだよなあ。そこんとこperlで連想配列使った方が早くないか、とか、それ引っ張ってくるならSQLでしょ、とか。
ここんとこウチでは脱データベース、ていうかDBを使うほどでもない量で作りも単純なテキストデータが対象。perlだけでごにょごにょしていて、気楽でいいなあ、と改めてしみじみつくづく。たいしたことをしてるわけでもないのに、意図どおりに動かない・見えないのは、perlなのかSQLなのか、Javascriptなのかcssなのか、とあれこれ絡んでめんどくさいんだよね、WEBサイトって。
なんとかもっと簡単にできないものかしらん。
いろんなことが面倒になってきてるような気がするのは歳のせいなのかなあ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
めも
簡単なパズルで現実逃避。
データを、表示順で並べて、同じ表示順の中ではID順で並べる、てのは当たり前のありがちで、SQL文だとたぶん
order by displayorder asc, id desc
てな感じでさくっと書ける、のかな。
これをどうしたもんかとちょっと悩んで。…hashに放り込んでループすればイケる。
foreach (keys %{ $ref } ){
$pos->{ $ref->{$_}->{displayorder} }++;
$disp->{ $ref->{$_}->{displayorder} }->{$_} = 1;
}
foreach my $display ( sort {$a<=>$b;} keys %{ $pos } ){
foreach ( sort {$b<=>$a;} keys %{ $disp->{$display} } ){
print $ref->{$_};
}
}
でも、なんかダサい(死語)
並べかえたい、というのはよくあることなのに、こんな書き方してしまうと、バリエーションの数だけ同じようなことを書かなきゃいけないじゃん。…うううむ。
とはいえ、忘れないうちにメモっておこう。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
IKEAはちょっと面白いかも
昨日、土曜は南船橋にあるIKEAという家具屋なホームセンターを冷やかしに出かけてみた。ちょっとソファっぽいのが必要かな、と。
最初、ただのでかい家具屋を想像してたんだけど、これがかなり面白かった。広いし品揃えは豊富だし、ごろごろ転がってもいいし。へーふーん、と。おまけにホットドッグが100円で、ちょっとこじゃれたレストランも安くて量が多くて美味かったし。子供をあずけるところもちゃんと用意されているし、こういう店もありだなぁ、と感心してしまった。値段を安くして、ただただモノを並べてるだけじゃ売れない時代ってヤツなのかも。ちょっとした遊び心というか、店舗なんだけど、違う空間というか、こういうプラスアルファななにかが必要やねぇ。結局、IKEAの策略にのっかって、土曜はソファベッドをひとつお買い上げ。
んで、おもしろいもんだからやたらうろついて、予想外に疲れてバタンキュー(死語)先週はちと仕事がらみもハードだったんでグロッキー。バテバテの日曜は、帝釈天など近場をちょろっとうろつき、早々に帰宅して部屋でバテバテ転がる。もちろん亀有「元宝餃子」で昼飯にして、「ラーゾ」のテイクアウトを夕飯に。どちらも美味なのだ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
utfのトラブルも糞エクセルが…
帰り際にトラブル。…って、なんで utf のファイルが文字化けてんだよ。utf基本のサイトで。設定ファイルを、utfも理解できない低能糞エクセルなんぞでいつまでもつけてるからこんな腐ったことになるんだ。おまけに設定ファイルを読み込んだページはキャッシュがきくので、設定ファイルをsjisにして流し込み直してアクセスしてもキャッシュを返すだけ。全部でン台あるwebサーバーのキャッシュを殺さないとまずい。なのに、当然sambaで読み書きできない。rootでrsyncで、ということになるんだけど、まさか週末のかき入れ時にすべてのページのキャッシュを消すなんてできない。必死で該当ページのキャッシュを見つけてなんとかしのいでこんな時間だ。
って、utfのcsv設定ファイルを無造作にほうり込んだのは、誰でもない、わたしなんだけどね。しょぼ。しかし、やっぱりここでも糞エクセルかよ、と逆ギレる。
ふだん、自分がエディタで作業してるから、というかパソコンを触ってるというよりエディタを使ってる、という状態なもんで、つい誰もがそうだろうと思ってたり。エクセルを普通に使うならエディタなんてもっと普通に使えるだろうと思ったらそうでもないのでちょっと驚いた。実際プログラマでもないひとはエディタを使う方が少ないのかもしれん。わたしはプログラマじゃないけど、古巣で仕事柄ネーム書きすることが多くて、パソコンイコール文章書きのための機械。世間一般、というか普通のひとは、パソコンってのは、エクセルやその他のアプリのための機械でインターネットするための機械。
たぶんパソコンにしてみれば、そうした使われ方が本望だよなあ。おれはたんなる文字打ちのための道具じゃねえぞ、と。エディタなんて野蛮なもの使ってんじゃねえぞ、と。
なんかなあ。エクセルのないところにいきたいぜ。今のわたしの不幸の97%はふぁっきんエクセルが原因だし、蒸し暑いのも電車が遅れるのもエクセルが悪い。ちくそお。ちかりたよ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」