
下記ソースで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で質問しましょう!
似たような質問が見つかりました
- JavaScript JAVASCRIPT 2 2022/04/15 15:10
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript jsで、配列内の文章を改行する際どのようにすればいいですか。 3 2022/07/05 20:40
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
GASでチェックボックスを一括of...
-
スマホ上で、左右スワイプで次...
-
Cookieに保存されない
-
初心者です。gulpでコンパイル...
-
Adobe acrobat proでフォームを...
-
画面遷移を行わずに同一ページ...
-
変数宣言と初期値代入の場所に...
-
switch文のswitch(n)の部分を複...
-
jsでは、'で区切った部分を改行...
-
タグを教えてください。
-
ラジオボタンを複数選択したと...
-
jsで質問です。 formをsubmitし...
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Outlookのアカウントがあるとメ...
-
jqueryのselect2で検索欄の文字...
-
<tr>指定した表の行要素をボ...
-
食材の期限を管理するためにGAS...
-
ビデオのJSについて
-
鍵盤アプリで、スマホの画面に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
タグを教えてください。
-
jqueryのselect2で検索欄の文字...
-
jsonテキストデータの並び替え...
-
初心者です。gulpでコンパイル...
-
ラジオボタンを複数選択したと...
-
階層別の組織図の自動作成について
-
jQueryで同じクラス名のものを...
-
二次元配列を使って順位をだす...
-
読み込んだQRコードをフォーム...
-
画面遷移を行わずに同一ページ...
-
セレクトを全て選択されていな...
-
【Google Apps Script】「ライ...
-
Adobe acrobat proでフォームを...
-
二次元配列の全要素の全要素を...
-
【GAS】WEBアプリでハイパーリ...
-
GASでGoogleフォームの自動返信...
-
フォームが空欄の時にフォーム...
-
セレクトボックスで配列を呼び...
-
イラストレーター、縦中横のシ...
おすすめ情報