JQuery-UIのdialogではまったところ

JQuery-UIを導入してくっそはまったので、備忘録として書いておく。

dialogでopenできないとか、autoOpenがきかないとかの話です。

これが誰かの助けになりますように。

 

バージョンはこれ

jquery-1.7.2.custom.min

jquery-ui-1.10.3.custom.min

 

で、特に難しいことがしたいわけじゃなくてdialogを普通に表示したかった。

http://jqueryui.com/dialog/

こんな感じですね。

 

まず、dialogなのに普通にhtmlとして見えちゃってた。

style="display:none";

とかしちゃっていいのだろうかと思ったが。。。ださい

 

で、他のサンプル見たら

dialog('open');

で開けるらしい。

 

実行してみる。できない。コンソールログには

$(...).dialog is not a function

・・・いや、ないんかい。

 

再びぐぐると、初期化してないとだめみたい。英語読めてよかった。

http://forum.jquery.com/topic/dialog-is-not-a-function

・・・いや、できねーけど

 

ここで、cssが間違ってるんじゃないかと1時間長考。関係は無かった。

そして、jsがコンフリクト起こしてるんじゃないかと1時間長考。関係は無かった。(と思われる。全部よめんわ)

 

で、最後に見つけたすごい簡単なサンプルを実行

http://jqui.my-learn.net/dialog/index.php

・・・できた

 

いろいろ確かめてみたけど、

・clickでもon(click, ...)でも関係はない模様

・autoOpen: false使うと動かなくなる。のでdisplay:none;した。クリックでdialog表示も確認。これでいいのかな...

・autoOpenきかないでぐぐってもでてこない。

・openがらみのものがうまく動かないことが分かった。Cakeとか環境のせい?ありえんのか?

・他のオプションはほとんど動いた。なぜautoOpenだけ...

 

これでやっと帰れる。。。

まだまだ不明な点が多いので、誰かに教えて欲しい。。。

おそらく追記します。

 

 ☆追記☆

 この翌日にもう一度だけサンプル試したら動きました。

JQueryの文法間違ってた疑惑なんだけど他のところ動いたから謎のままだ...

エンジニアとしてどうなんだろうね

 

むしろajaxがうまくいかなくて謎だった。

cake使ってるんだけど、postした値がうまく取れなくて発狂した。

firebugでconsoleとにらめっこしたけど、js上ではちゃんと値取れててそれをcakeに渡すのがもう謎で謎で。

先輩のコードではちゃんと値を受け渡せていたから、多分やり方がうまくいってないっぽいんだけど、なんでだ...

 

来週、再来週と研修いってajaxとか自分なりにまとまったら、さらに追記というか新しく書きます