- PR -

サーバーのクリックイベントの後にクライアントのJavaScript実行

1
投稿者投稿内容
PoH
常連さん
会議室デビュー日: 2003/09/09
投稿数: 48
投稿日時: 2005-04-13 12:34
ボタンのクリックイベントにて
クリックした時に
@サーバーのクリックイベントを実行
Aクライアント側のJavaScriptよりActiveXを実行
という順序の処理を行いたいと思っています。

Page.RegisterStartupScriptを使用してクライアントのJavaScriptを実行
クライアントのJavaScriptにてActiveXのプログラムを実行しているのですが
JavaScriptのCatchに入ってしまいます。
JavaScriptのアラートで表示されるdescriptionは空文字、
エラーNumberは-2147467259と表示されます。

別のボタンから同じTestというJavaScriptの関数を
OnClickで呼んだ場合は実行されています。

サーバーのクリックイベントの後に
ActiveXを呼ぶ方法をご教授いただけませんでしょうか。

よろしくお願いします。



-------------------------------------------
//サーバー側クリックイベント
private void Button1_Click(object sender, System.EventArgs e)
{
//---------------------------
サーバーでの処理
//---------------------------

Page.RegisterStartupScript("CallActiveX",
"<script language=\"javascript\">Test('引数');</script>"));

}

-------------------------------------------
//クライアント側JavaScript
<SCRIPT language="javascript">
<!--
function Test(strHikisu) {
try
{
Form1.ActiveXtest.TestEvent( strHikisu );
}
catch(e)
{
alert( e.description + " " + e.number);
}
}
// -->
</SCRIPT>
-------------------------------------------




burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2005-04-13 18:42
詳しくありませんがHTMLが完全にロードされるまでは、ActiveXは使用できないとかの制限があるのかもしれませんね。。。
とりあえず原因究明のため
JavaScriptのTimerを使用して、Test()を呼ぶタイミングをずらして試してみるのはいかがでしょうか?
1

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