出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

配列入力   popoさん [2002/06/17 10:05:19] [2176]
  Re:配列入力   ナッツさん [2002/06/17 11:31:57] [2177]
    Re:配列入力   popoさん [2002/06/17 13:09:51] [2178]
      Re:配列入力   ナッツさん [2002/06/17 15:08:40] [2182]
        Re:配列入力   popoさん [2002/06/18 0:23:00] [2191]

[2176] 配列入力
投稿者:popoさん 2002/06/17 10:05:19
無題で登録したため、再度書き込みさせていただきます。

教えて下さい。
a〜cで配列に文字列を代入しています。
d〜fで別の配列に値を代入したいのですが、For文でループして取得しようとしても、上手くいきません。
初歩的なことかも知れませんが・・・わかる方、是非教えて下さい。
よろしくお願い致します。

<%
dim foo(300)
foo(0) = "TEST00"  --------a
foo(1) = "TEST01"  --------b
foo(2) = "TEST02"  --------c
%>
<Script Language="VBSCRIPT">
sub Load
dim k(300)
k(0) = "<%foo(0)%>" --------------d
k(1) = "<%foo(1)%>" --------------e
k(2) = "<%foo(2)%>" --------------f
end sub
</Script>

'**********************
上手くいかないFor文
dim h
for h = 0 to 2
k(h) = "<%=foo(h)%>"
next
'**********************

[2177] Re:配列入力
投稿者:ナッツさん 2002/06/17 11:31:57
> 無題で登録したため、再度書き込みさせていただきます。
>
> 教えて下さい。
> a〜cで配列に文字列を代入しています。
> d〜fで別の配列に値を代入したいのですが、For文でループして取得しようとしても、上手くいきません。
> 初歩的なことかも知れませんが・・・わかる方、是非教えて下さい。
> よろしくお願い致します。
>
> <%
> dim foo(300)
> foo(0) = "TEST00"  --------a
> foo(1) = "TEST01"  --------b
> foo(2) = "TEST02"  --------c
> %>
> <Script Language="VBSCRIPT">
> sub Load
> dim k(300)
> k(0) = "<%foo(0)%>" --------------d
> k(1) = "<%foo(1)%>" --------------e
> k(2) = "<%foo(2)%>" --------------f
> end sub
> </Script>
>
> '**********************
> 上手くいかないFor文
> dim h
> for h = 0 to 2
> k(h) = "<%=foo(h)%>"
> next
> '**********************
>

上手くいかないFor文はLoad関数の中にあるのでしょうか?
それともbodyの中にあるのでしょうか?

[2178] Re:配列入力
投稿者:popoさん 2002/06/17 13:09:51
> > 無題で登録したため、再度書き込みさせていただきます。
> >
> > 教えて下さい。
> > a〜cで配列に文字列を代入しています。
> > d〜fで別の配列に値を代入したいのですが、For文でループして取得しようとしても、上手くいきません。
> > 初歩的なことかも知れませんが・・・わかる方、是非教えて下さい。
> > よろしくお願い致します。
> >
> > <%
> > dim foo(300)
> > foo(0) = "TEST00"  --------a
> > foo(1) = "TEST01"  --------b
> > foo(2) = "TEST02"  --------c
> > %>
> > <Script Language="VBSCRIPT">
> > sub Load
> > dim k(300)
> > k(0) = "<%foo(0)%>" --------------d
> > k(1) = "<%foo(1)%>" --------------e
> > k(2) = "<%foo(2)%>" --------------f
> > end sub
> > </Script>
> >
> > '**********************
> > 上手くいかないFor文
> > dim h
> > for h = 0 to 2
> > k(h) = "<%=foo(h)%>"
> > next
> > '**********************
> >
>
> 上手くいかないFor文はLoad関数の中にあるのでしょうか?
> それともbodyの中にあるのでしょうか?
>

返答ありがとうございます。
For文はLoad関数内にあります。
For文でまわしても、foo(0)の値しか得られません。
For文でなくても、Foo(0)の値がはいってしまいます。
例えば、
i = 0
j = 1
x = foo(i)
y = foo(j)

x,yはfoo(0)の値がはいってしまいます。
根本的に考え方が間違っているのでしょうか?
よろしくお願い致します。

[2182] Re:配列入力
投稿者:ナッツさん 2002/06/17 15:08:40
> > > <%
> > > dim foo(300)
> > > foo(0) = "TEST00"  --------a
> > > foo(1) = "TEST01"  --------b
> > > foo(2) = "TEST02"  --------c
> > > %>
> > > <Script Language="VBSCRIPT">
> > > sub Load
> > > dim k(300)
> > > k(0) = "<%foo(0)%>" --------------d
> > > k(1) = "<%foo(1)%>" --------------e
> > > k(2) = "<%foo(2)%>" --------------f
> > > end sub
> > > </Script>
> > >
> > > '**********************
> > > 上手くいかないFor文
> > > dim h
> > > for h = 0 to 2
> > > k(h) = "<%=foo(h)%>"
> > > next
> > > '**********************
> > >
> >
> > 上手くいかないFor文はLoad関数の中にあるのでしょうか?
> > それともbodyの中にあるのでしょうか?
> >
>
> 返答ありがとうございます。
> For文はLoad関数内にあります。
> For文でまわしても、foo(0)の値しか得られません。
> For文でなくても、Foo(0)の値がはいってしまいます。
> 例えば、
> i = 0
> j = 1
> x = foo(i)
> y = foo(j)
>
> x,yはfoo(0)の値がはいってしまいます。
> 根本的に考え方が間違っているのでしょうか?
> よろしくお願い致します。
>
サーバスクリプトとクライアントスクリプトを区別して考えたらどうでしょう(TRYASPにもありますが)
1.foo配列を隠しでもっておく。
2.隠しエリアをLoad関数は参照する
ってのはどうでしょう。
例)
<%
dim foo(3)
foo(0) = "TEST00" '  --------a
foo(1) = "TEST01" '  --------b
foo(2) = "TEST02" '  --------c
strfoo = join(foo,chr(27)) ←配列を文字列にする

%>
<Script Language="VBSCRIPT">
sub Load()
dim k(300)
'上手くいかないFor文
dim h
STOP

stra=split(aaa.value,chr(27)) ←文字列を配列に戻す
k(0) = stra(0) '--------------d
k(1) = stra(0) '--------------e
k(2) = stra(1) '--------------f

for h = 0 to 2
k(h) = stra(h)
next

end sub
</Script>

</HEAD>
<BODY ONLOAD ='Load()'>
<input id='aaa' name='aaa' value='<%=strfoo%>'>

</BODY>
</HTML>



[2191] Re:配列入力
投稿者:popoさん 2002/06/18 0:23:00
記述のようにSplit関数を使用し、出来ました。
大変助かりました。
ありがとうございます。





TreeBBS For ASP V.0.1.3
Program By YasNet