11/05/24 23:18:25.74
親画面と小画面でdatepicker(1ヶ月分をカレンダーのように表示)を
それぞれ同時に表示したいんですけど
datepickerの大きさをそれぞれ任意の大きさに変えるにはどうしたらいいですか?
cssで大きさを指定してしまうと、二つとも共通のcssを読み込んでるので
同じ大きさになってしまいます。
二つのdatepickerを自由に大きさを指定するにはどうしたら良いですか?
どなたか教えてください。
670:デフォルトの名無しさん
11/05/24 23:37:53.77
あげます
671:デフォルトの名無しさん
11/05/25 11:32:51.36
>>669
idつければいい
672:デフォルトの名無しさん
11/05/25 20:47:45.81
>>699
やり方はいろいろあると思うけど、
例えば、Datepicker全体をdivとかで囲んでしまって、
そのdivに親と子で違うIDを指定する
// 親
<div id="parent"><!-- ここはDatepicker --></div>
//子
<div id="parent"><!-- ここはDatepicker --></div>
で、スタイルシートのほうで
#parent #datepicker {
// 親のスタイル
}
#child #datepicker {
// このスタイル
}
とかすれば、大きさを指定している部分だけの修正で修正範囲も少ないとおもふ
673:デフォルトの名無しさん
11/05/26 19:32:15.44
<textarea id="hoge"></textarea>
--------------------------------------------
$("#hoge").text("hoge\nhoge")
クリックしたらテキストエリアの内容を書き変えたいんだけど、
書き換えたい文字列に改行コードが入ると unterminated string literal というエラーが出てうまくいかないお…
(´;ω;)どうすればいいのー
674:デフォルトの名無しさん
11/05/26 20:47:25.95
html()のほうかなー
試してないけど違ったらごめんね
675:デフォルトの名無しさん
11/05/26 21:19:33.05
>>674
(´;ω;)html()でも試した
Stringに改行コードが入ってるのがあかんらしい
676:デフォルトの名無しさん
11/05/26 22:21:38.06
$("#hoge").html("hoge<br />hoge") ならいくんじゃない?
677:デフォルトの名無しさん
11/05/26 23:40:50.91
1.2.6,1.5.2,1.6で試したがそんなのにはならんなー
ブラウザとjqueryのバージョンは何?あと再現できるコードを頼む
678:デフォルトの名無しさん
11/05/27 00:02:24.53
>>676
理由がわかりました
cgi から print "$(\"#hoge\").text(\"hoge\nhoge\")" で書き出してるわけだけど、
クライアントに返すソースが
$("#hoge").text("hoge
hoge")
になってた…
printする前に改行コードを\nから%0Aにリプレイスしてから、
javascript側のunescapeで改行コードに戻してやったらうまくいった
だがIEは失敗。なぜかラインフィードが半角スペースにデコードされとる
キャリッジリターンした時だけ何故かIEでもちゃんと改行される
IEしね
679:デフォルトの名無しさん
11/05/27 00:06:50.21
>>677
>>678 の通りです><
cgiからprintでjavascriptを書き出してるのが原因でした…
ちなみにjQueryは1.4.4つかってます
それにしてもIEは本当に問題児だ
だいっ嫌いこんな糞重くてバグだらけのブラウザ
680:デフォルトの名無しさん
11/05/27 00:24:31.14
%0Aより\\nとしてやる方がいいんじゃねーの?
681:デフォルトの名無しさん
11/05/27 01:04:32.17
\\n\\rじゃね?
682:デフォルトの名無しさん
11/05/27 01:26:48.08
|ω・`)おおうっ…そっちの方が美しいですね
>>680さんの通りにしたら、火狐、Chrome ではうまくいきましたが、
やはりIEでは改行されずに\nが半角スペースになってしまいました…
>>681さんはWindowsの改行コードですね
IEではうまく行きましたが、今度は火狐、Chrome が\rで改行、\nで改行と
認識してしまって二重改行になっちゃいました…
あれ?Windowsの改行コードって\\r\\nじゃなかった?と思いやり直したら
火狐、Chrome はうまくいって、IEは二行目以降の行の最初に半角スペースが入り失敗…
IE、火狐、Chrome できちんと改行されるのは\\rにした時だけでした
なぜだろうななんか気持ち悪い
IEがおかしいってのだけはわかる
あとは私の環境の問題かしら…
683:デフォルトの名無しさん
11/05/27 01:55:36.89
submitボタンが押されるとjqueryでtextareaを書き換えてからsubmitするようにしたのですが、
.clickで書き換え後val()をalertすると書き換わってるのですが、送信されるのは書き換わっていません。
どうするべきでしょうか?
684:デフォルトの名無しさん
11/05/27 03:10:17.39
textareaからフォーカスが離れたタイミングで書き換えておくか、データをAjaxで送信するか
685:デフォルトの名無しさん
11/05/27 16:32:25.17
|ω・`)>>682について勘違いをしてたので言及
ちゃんと調べてみたら、\\rでも\\nでも\\r\\nでもIEは改行されてなかった…
-------------------------------------------
<textarea id="hoge"></textarea>
-------------------------------------------
原因は$("#hoge").html(String)でStringに入ってるすべての改行コードがIEでは無視されてしまってた(.text()も同じ)
jQueryのhtml()がアカンのかと思い、document.getElementById("hoge").innerHTML(String)
で試したけど、やはりIEが改行コードを無視する
valueを書き変えたらどうかと試してみたら、
$("#hoge").attr("value", String) とすると改行がIEでもちゃんと反映された
他のブラウザもOK。
という事で解決しました
あどヴぁいす下さった皆さんどうも|ω・`ノシ
686:デフォルトの名無しさん
11/05/27 17:05:53.52
$("#hoge").val("foo\nbar\nbaz");
687:デフォルトの名無しさん
11/05/27 17:44:05.35
>>686
|ω・`)あぅ…無知ですた
688:654
11/05/30 08:06:22.13
>>658
>656のaaaaの部分だけ(やccccの部分だけ)をDOMにせずjQueryオブジェクトのまま取得したり書き換えたりしたいってことです
レスが遅れてすみません
689:デフォルトの名無しさん
11/05/30 16:48:44.24
うへ
690:デフォルトの名無しさん
11/05/30 17:01:57.42
>688
そういうときは変更の対象となる部分をspanの中に入れるから普通は困らないんだけど。
元々のHTMLは変更できないんだよね、きっと。
691:654
11/05/30 18:34:48.02
> 元々のHTMLは変更できないんだよね、きっと。
はい
HTMLは変更できません
つまりテキストノードと要素ノードが共存している場合のテキストノードはjQueryオブジェクトのまま取得・設定できないってことですか
692:デフォルトの名無しさん
11/05/31 13:03:23.96
<div id="aaa"><div id="bbb">test</div></div>
というHTMLに対して
$("#aaa").html()
で<div id="bbb">以下の要素のHTMLテキストが取れるけど
$("#aaa")から<div id="aaa">以下のHTMLテキストを直接取得する方法ってある?
親要素を作って$("#aaa")をappendして.html()で取得するって方法はできたけど
できれば直接取得したい。
693:デフォルトの名無しさん
11/05/31 13:24:13.76
>>692
Fx 対応してないけど outerHTML
694:デフォルトの名無しさん
11/05/31 17:58:05.46
>>693
サンクス
jQueryでブラウザ依存吸収してほしいね。