- - PR -
イベントを伴わない?動的なHTMLの作成
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-01-24 13:59
グループウェアの中への組込みスクリプトの中で、
JavaScriptを使って、TABLE内に表示する値を表示する処理を考えています。 JavaScriptのみで作成する場合、htmlのLOAD時やもしくはボタン押下時のイベント でJavaScriptのファンクションを呼び出し、その中で指定する値をセットすること ができますが、 今回は、ColdFusionのScriptへの組込み(Script本体の修正不可)で使用するため、 <BODY>タグのonloadイベントが使えません。 イベント無しでJavascriptのファンクションを呼び出すような方法がありましたら、 教えて頂けないでしょうか? よろしくお願い申し上げます。 | ||||||||
|
投稿日時: 2007-01-24 14:13
こんな感じでしょうか。
<script> alert("foobar"); </script> | ||||||||
|
投稿日時: 2007-01-24 15:07
有難うございました。
ど素人なんでお恥ずかしいです。 解決しました。 function youbi() { document.write = 'xxx'; } <table> <tr> <td>1</td> <td>xxxxxx</td> <td><script>youbi();</script></td> </tr> ・ ・ </table> でうまく動作しました。 と一旦は思ったのですが、このフィールド 値を替える時は、別のフィールドを変えたイベントに伴って この処理を行う必要があります。 具体的には、 年月の値により1日から始まる日付の曜日をセットする処理です。 初期設定時は、当月の値に従って曜日をセットし、 翌月になって処理する時のため、年月の変更に従って曜日を再セット、 さらに登録済みのデータを開いた時のため指定年月に従ってセットする処理です。 このため、onload以外のイベントで最初に一度だけ自動的にFunctionを呼ぶ方法 は無いかとお尋ねした次第です。 [ メッセージ編集済み 編集者: きくじろう 編集日時 2007-01-24 16:20 ] | ||||||||
|
投稿日時: 2007-01-24 16:44
いまいちどういうことか良く分かりませんが。
ライブラリを書き換えられないのであれば、今回のyoubi()のようにHTMLに埋め込めばいいわけで。 >年月の変更に従って ここでイベントが発生するはずなんですが、それじゃだめなんでしょうか。 | ||||||||
|
投稿日時: 2007-01-24 17:41
IEなら、
で、BODYのロードイベントが使えます。 FireFoxにも似たようなものがあります。 | ||||||||
|
投稿日時: 2007-01-24 19:39
アドバイス有難うございます。
window.attachEvent("onload",function(){ } まさにこれです。 データ再表示の処理で実行したところ、間違いなくファンクションを呼び出す ことはできましたが、 onloadのイベントが発生するタイミングがDBの値を取ってくるタイミングより 前になるせいか、値を取得した処理はできませんでした。 元の処理はCOLDFUSUSIONで作成された未公開ソースで行われており、 このソースにINCLUDEするものであるため、 ソース全体が触れないのがつらいところです。 曜日を月から算出して表示させているため、 曜日自体をDBに書き込んでおけば、月を変えたときは イベントが発生させられるので、処理できるのでしょうが、 安直なので、後学のために方法は無いかとお尋ねした次第です。 有難うございました。 | ||||||||
|
投稿日時: 2007-01-24 23:02
<body onload="hoge()">
というHTMLが生成されているなら、
というようなことも可能です。
でもいいですね。onloadで呼ばれる関数に上書きするパターンです。 |
1