- PR -

日付ボタンクリック時の値を取得したい

投稿者投稿内容
みかん
常連さん
会議室デビュー日: 2003/12/13
投稿数: 42
投稿日時: 2006-05-21 22:19
ホームページ上で以下のようなことを実施したいと思っています。
・カレンダーの日付をクリック
・日付の情報をもとに2006年5月21日ならば20060521.htmを参照。
 (20060521.htmなどは毎日手作業で作成予定)
・20060521.htmがなければ予め用意したnodata.htmを表示。

上記を実現する為に実施したことと致しましては
ホームページビルダーでMicrosoftカレンダーコントロール10.0を貼付け
IDをCalender1とし、
・通常の画像ボタンへのイベント設定と同じように
Onclickイベントを設定しましたが
なにも反応がありません

もっと別の方法があるなど情報がございましたら
ご教授くださいませ。
宜しくお願いいたします。

かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-05-21 22:44
引用:

みかんさんの書き込み (2006-05-21 22:19) より:

上記を実現する為に実施したことと致しましては
ホームページビルダーでMicrosoftカレンダーコントロール10.0を貼付け
IDをCalender1とし、
・通常の画像ボタンへのイベント設定と同じように
Onclickイベントを設定しましたが
なにも反応がありません


カレンダーコントロールだったら OnClick では無く
SelectionChanged イベントなんじゃないですか?

#ホームページビルダーでもASP.NETサポートしているんだ…
みかん
常連さん
会議室デビュー日: 2003/12/13
投稿数: 42
投稿日時: 2006-05-22 18:00
ご回答有難うございます。
本来の目的とは違うのですが、まずは、イベントを発生させる事を
実現させる必要があると思いHPビルダー上にはSelectionChangedが
用意されていないので一度Onclickを設定してSelectionChangedに
書き換えたのですがエラーも出ませんでした。
以下のようにしてます。
<OBJECT classid="clsid:8E27C92B-1264-101C-8A2F-040224009C02" id="Calendar1" SelectionChanged="alert('テスト');">

因みにASPX版では以下の情報があったので
現在、両方を試しているところです。
http://ja.gotdotnet.com/QuickStart/aspplus/default.aspx?url=/quickstart/aspplus/samples/webforms/ctrlref/webctrl/calendar/doc_cal.aspx

みかん
常連さん
会議室デビュー日: 2003/12/13
投稿数: 42
投稿日時: 2006-05-22 18:53
今のところ、ASPXで作業を進めてます。
先のHPを参考に日付をクリック時に年月日.htmをLabel1に格納することまで
できました。
あとは、格納された値を元にページを探しに行くようにしたいのですが
どのようにしたら良いのでしょうか?


<html>
<head>
<script language="JScript" runat="server">
function Date_Selected(sender:Object, e:EventArgs) : void
{
Label1.Text = Calendar1.SelectedDate.ToString("yyyyMMdd") + ".htm";
}
</script>

</head>
<body>
<h3><font face="Verdana">Calendar 表示</font></h3>
<form runat=server>
<asp:Calendar id=Calendar1 onselectionchanged="Date_Selected" runat="server" />
<p>
<asp:Label id=Label1 runat="server" /><BR>
</form>
</body>
</html>
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-05-22 20:21
引用:

みかんさんの書き込み (2006-05-22 18:00) より:

<OBJECT classid="clsid:8E27C92B-1264-101C-8A2F-040224009C02" id="Calendar1"


あっActiveXだったのか、的外れですみません(汗

引用:

みかんさんの書き込み (2006-05-22 18:53) より:

あとは、格納された値を元にページを探しに行くようにしたいのですが
どのようにしたら良いのでしょうか?



こんな感じかな(JScriptが解らないのでC#で失礼します)

コード:
if (System.IO.File.Exists(Server.MapPath(ファイル名))) {
  Server.Transfer(ファイル名);
}

みかん
常連さん
会議室デビュー日: 2003/12/13
投稿数: 42
投稿日時: 2006-05-23 22:51
かるあ さん
ご返答ありがとうございます。
早速試してみたいと思ったのですが
PCが故障したため、試す環境を再作成するのに
しばらくかかりそうです。
それではまた。
kuma
大ベテラン
会議室デビュー日: 2004/02/25
投稿数: 110
投稿日時: 2006-05-24 06:50
引用:

みかんさんの書き込み (2006-05-22 18:53) より:
あとは、格納された値を元にページを探しに行くようにしたいのですが
どのようにしたら良いのでしょうか?


「探しに行く」
が実際どのような動作を期待しているのか不明ですが
javascriptで指定ページを開くのは
window.open(url, name [, style])
で出来るはずです。
問題は
引用:

・20060521.htmがなければ予め用意したnodata.htmを表示。


こちらでしょうね
適当に思いついたものを・・
1.status code 404の戻りをnodata.htmにする(yyyyMMdd.htm以外の要求でもnodata.htmになってしまう)
2.yyyyMMdd.htmが無い場合forwardなりdipacthでnodata.htmを要求する(aspの知識がないため憶測ですが似たものがあると思います)
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-05-24 07:16
引用:

kumaさんの書き込み (2006-05-24 06:50) より:

javascriptで指定ページを開くのは
window.open(url, name [, style])


あれ?、このスクリプトが動くのはいつだろう

スキルアップ/キャリアアップ(JOB@IT)