
下記ソースでVBscriptの配列変数をJavascriptで使うにはどうしたらいいでしょうか。
vbscriptで配列stat2(i)に値セット後javascriptで使いたい
<script type="text/javascript">
<!--
//=====
function test(){
var i;
for (i=0;i<9;i++){ document.form1.text1[i].value=<%=stat2(i)%>; <-これだとエラー
}
}
//======
//-->
</script>
No.2ベストアンサー
- 回答日時:
サーバーサイドスクリプトのオブジェクト(変数など)をクライアントサイドスクリプトで使うことはできません
%で括られているブロックはWebサーバー上で実行される部分です
<script type="text/javascript">
</script>
の部分はページを閲覧しているクライアント上で実行されます
両者に共有する部分はありませんよ
クライアント側だけで実行すればいいのでは?
<script type="text/javascript">
<!--
var stat2;
// stat2の初期化ルーチン
function myload()
{
stat2 = new Array(10);
for( var i = 0; i < stat2.Length; i++ ) {
stat2[i] = i+1;
}
}
// SELECTのonchangeイベント
function test()
{
for( var i = 0; i < stat2.length; i++ ) {
document.form1.text1[i].value = stat2[i];
}
}
window.onload = myload;
//-->
</script>
といった具合ですが ...
サーバサイド側で何らかの処理を行ってその結果をクライアント側に反映したいのであれば
hiddenエレメントなどに設定しておいて
このデータを分割、各テキストボックスへのデータの代入
といった処理が必要でしょう
No.1
- 回答日時:
よーく考えましょう
サーバサイドのスクリプトとクライアントサイドのスクリプトが同時に動くことはありませんよ
<% %>でくくられたサーバサイドのスクリプトが実行されるのは
ページを構築している段階です
これに対して クライアントスクリプトの実行される段階は
何かのアクション等に対してこのJavaScriptの関数が呼び出された時点です
この2つのタイミングはまったく違う時期ですし、実行される場所も違います
ご希望のことがやりたいならフォームの中のinputタグを
<input type="text" name="Text1" value="<%= stat2(0) %>">
<input type="text" name="Text1" value="<%= stat2(1) %>">
<input type="text" name="Text1" value="<%= stat2(2) %>">
<input type="text" name="Text1" value="<%= stat2(3) %>">
<!-- 同様に8まで設定する -->
<input type="text" name="Text1" value="<%= stat2(8) %>">
といった具合でしょう
この回答への補足
説明不足ですみません。
全体は下記のような感じです。
SELECTのONCHANGEでJAVASCRIPT中でVBSでセットした値を使いたいのです。
test.asp
<%@LANGUAGE=VBScript%>
<%
Dim stat2(1)
Dim i
for i=1 to 10
stat2(i)=i
next
%>
<html>
<head>
<script type="text/javascript">
<!--
//=====
function test(){
var i;
for (i=0;i<9;i++){ document.form1.text1[i].value=<%=stat2(i)%>; <-これだとエラー
}
}
//======
//-->
</script>
</head>
<html>
<body>
<select name="name" onchange="test()">
<option .....>
</select>
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
<input type="text" name="text1">
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTMLとJavaScriptで作った表示...
-
TextBoxに半角数字以外を入れた...
-
親ウィンドウから子ウインドウ...
-
プルダウンで選択すると、DBの...
-
ハイパーリンクを別ウインドウ...
-
ラジオボタン未チェックの場合...
-
COBOLの数字チェック
-
<JavaScript>tableタグを入力不...
-
hiddenを動的に作成したい
-
JavaScriptでラジオボタンのチ...
-
データベースの値を判断してラ...
-
javascript name="hoge"等に記...
-
入力フォームに半角スペース以...
-
テキストボックスの入力をリセット
-
Excelで作ったhtmlファイルのサ...
-
2重でメール入力チェックをした...
-
VBScriptでHTMLのセレクトボッ...
-
「オブジェクトは、このプロパ...
-
history.backの前に値をクリア...
-
【javascript・PHP】プルダウン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
TextBoxに半角数字以外を入れた...
-
ページ間で変数を保持したい
-
tabindexの取得
-
フォームのPOSTデータをサブウ...
-
マイナスなら赤字で表示したい...
-
blurイベントについて
-
jQueryのdatepickerの日付が選...
-
どちらかひとつのテキストボッ...
-
子ウィンドウを閉じるとき、親...
-
HTMLファイル同士での値渡し
-
カーソルが当たった箇所に吹き...
-
VBSからjavascript
-
VBscriptの配列変数をJavascrip...
-
【Javascript】(テキストボッ...
-
フォーカスが外れた時の入力チ...
-
ユーザー入力値の正誤判定をブ...
-
一部Enter無効化の方法を教えて...
-
JSで子ページから親ページのラ...
-
javascriptのちょっとした動作...
-
VBScriptでpingを実行(ブラウザ...
おすすめ情報