• ベストアンサー

JavaScriptからVBScriptの呼び出しについて

JavaScriptからVBScriptで作った関数を呼び出すことは可能なのでしょうか? 可能なのであれば、やりかたを教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • haporun
  • ベストアンサー率40% (230/562)
回答No.1

できますよ。 別のスクリプトタグの中で定義した関数は、普通に呼び出せますので。 <script language=vbscript> function hoge(arg) hoge=arg*5 end function </script> <script language=javascript> document.write(hoge(6)); </script> とか。 逆もしかりです。

snowsaab
質問者

補足

解答ありがとうございます。 早速、教えていただいたのを使いやってみたのですが、 『オブジェクトを指定してください』というエラーになってしまします。 こういうエラーはどういうときにでるのでしょうか? すいません。初歩的なことで・・・。 ちなみにエラーのでるソースです。 <input type="button" name="show" value="表示" onClick="show_in()"> <SCRIPT LANGUAGE="JavaScript"> <!-- function show_in(){  listn=document.form1.grup.selectedIndex+1;  document.form1.grup_no.value = listn;  document.write(Gamen(listn)); } //--> </SCRIPT> <SCRIPT LANGUAGE="VBScript"> Public function Gamen(listn) //処理// End function //--> </SCRIPT>

その他の回答 (2)

  • haporun
  • ベストアンサー率40% (230/562)
回答No.3

通常ASPのデフォルト言語はVBScriptとなっていますが、サーバーによってはJAVAScriptを使ってるところもありますよ。 それに、ASPだったらまた、別の話になりますよ。 最初からASPって言ってくれればよかったのに。 <script language=vbscript> と書いたら、ASPじゃなくてクライアントサイドスクリプトになってしまうのでは。 >私の書いているソースでは <script language=vbscript>を定義してなくて、定義していない関数を呼び出したいのです。 デフォルトがASPと規定されているところではいいですが、そうでないところもあるので、VBScriptと指定しないのは、多少リスクがあると思うのですが。 あと、呼び出しができないことで考えられる原因は、Scriptタグを使ったことで、クライアントサイドスクリプトがサーバーサイドスクリプトを呼び出そうとしたり、その逆をしていることだと思います。

snowsaab
質問者

お礼

説明不足で申し訳なかったです。 じゃ、クライアントサイドスクリプトからサーバースクリプトへの呼び出しが できなかったんですね。 勉強不足ですいません。 でも、それがわかっただけでもよかったです。 ありがとうございましたm(__)m

  • haporun
  • ベストアンサー率40% (230/562)
回答No.2

これ以前がないと分かりませんね。 form1はちゃんとformタグのnameになってますか? フォームの中にgrup_no.valueというnameのものはあるのでしょうか? そのへんが確認どころです。

snowsaab
質問者

補足

言われたとおりにソースを書いてみると、確かに動作しました。 でもですね、すいません。言い忘れたことがひとつ・・・。 ASPに <script language=vbscript> と定義しない場合は、 <vbscript>ではないのですか??? 私は <script language=vbscript> と定義しなくても、 <vbscript>だと思っていました。それは、間違いですか??? 私の書いているソースでは <script language=vbscript> を 定義してなくて、定義していない関数を呼び出したいのです。 それって、可能なのでしょうか。 わかりにくい質問ですいません。 わかる範囲で結構ですので、もし、よろしければご解答お願いしますm(_)m 

関連するQ&A