- PR -

CalendarコントロールでShift+クリックでJavascriptエラー

1
投稿者投稿内容
水戸黄門
会議室デビュー日: 2005/02/12
投稿数: 11
投稿日時: 2005-08-19 04:06
ASP.NET(VB)でCalendarコントロールを貼り付けた画面を作成したのですが
日付をShiftキーを押しながらクリックすると、javascriptエラー
(オブジェクトを指定してください。)が発生しました。
IEの新しいウィンドウが開き、そのアドレスバーには、
「javascript:__doPostBack(カレンダID,'2054')」が表示されました。

Shiftキーを押しながらリンクをクリックすると、新しいウィンドウで
リンク先を表示するのって、IE(他のブラウザも)の機能の1つなんですね。(今更知った。)

新しいウィンドウで、「javascript:__doPostBack」を参照するとエラーは出て
当たり前とは思います。

しかし、javascriptエラーが出るのは、回避できないものなのでしょうか?

カレンダで、マルチセレクトができるんじゃあないかと、ShiftキーやCtrlキーを
押しながらクリックするって、やるえることなので、回避方法があれば
教えて下さい。
ぼのぼの
ぬし
会議室デビュー日: 2004/09/16
投稿数: 544
投稿日時: 2005-08-19 12:10
「Shiftキーを押しながらのクリック」を、ページ全体に対して無効にして良いなら、

<script language="javascript">
document.onclick=func1;
function func1(){if(window.event.shiftKey) return false;}
</script>

と書けば良いと思います。
カレンダーだけに対して無効にしたいなら、window.event.srcElement.id だったかな?を見てifの条件を増やしてやる。
ネスケはeventの書き方が違ったはずなので、対応する場合は自分で調べてみてください。
1

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