はじめまして。今回はじめてHTML、JavaScript、VBscriptを交えたシステム開発をしています。それで、基礎的なこととは思うのですが、JavaScriptからVBscriptの関数を呼び出す場合の方法を教えてください。よろしくお願いします。
> JavaScriptからVBscriptの関数を呼び出す場合の方法を教えてください。
各Windows Scriptは、使用言語を明示しておけば相互に呼び出せますよ。
************ Internet Explorerでのクライアントスクリプトの例 ************
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Script-Type" content="text/JScript">
<title>スクリプト言語の混在</title>
</head>
<body>
<p><input type="button" id="txt1" value="VBScriptから、VBScriptのMsgBox関数を呼び出す"></p>
<p><input type="button" id="txt2" value="JScriptから、VBScriptのMsgBox関数を呼び出す"></p>
<p><input type="button" id="txt3" value="JScriptから、DHTMLのexecScriptメソッドを使って、VBScriptのMsgBox関数を呼び出す"></p>
<p><input type="button" id="txt4" value="VBScriptから、DHTMLのexecScriptメソッドを使って、JScriptのMath.PIプロパティの値を得る"></p>
<script type="text/vbscript"><!--
Function txt1_onclick()
Call window.alert( MsgBox("MsgBox関数", vbYesNoCancel Or vbQuestion) )
End Function
--></script>
<script type="text/JScript"><!--
function txt2::onclick()
{
txt1_onclick();
}
--></script>
<script for="txt3" event="onclick" type="text/JScript"><!--
window.execScript('MsgBox "MsgBox関数", vbInformation', "VBScript");
--></script>
<script for="txt4" event="onclick" type="text/vbscript"><!--
Call window.execScript("window.alert(Math.PI)", "JScript")
--></script>
</body>
</html>
****************************************************
************ Active Server Pagesでの例 ************
<%@Language="VBScript"%><%Option Explicit%>
<html>
<head>
<title>Sample</title>
<script runat="server" language="jscript">
function getUTCString()
{
var d = new Date()
return d.toUTCString();
}
</script>
<%
Dim sVBS, sJS
sVBS = FormatDateTime(Now, vbGeneralDate)
sJS = getUTCString()
%>
</head>
<body>
<p><%=sVBS%></p>
<p><%=sJS %></p>
</body>
</html>
****************************************************
************ HTMLビヘイビアの例 ************
<?xml version="1.0" encoding="Shift_JIS"?>
<PUBLIC:COMPONENT xmlns:PUBLIC="http://www.w3.org/TR/NOTE-HTMLComponents">
<PUBLIC:IMPLEMENTS TYPE="Behavior" id="HTC">
<PUBLIC:ATTACH EVENT="ondetach" ONEVENT="cleanup()" />
</PUBLIC:IMPLEMENTS>
<SCRIPT LANGUAGE="VBSCRIPT">'<![CDATA[
Function getFormatNumberVB(Value)
getFormatNumberVB = FormatNumber(Value, 0)
End Function
']]>
</SCRIPT>
<SCRIPT LANGUAGE="JSCRIPT">//<![CDATA[
if(element.tagName == 'INPUT' && element.type == 'text')
{
element.attachEvent('onfocus', onFocus);
element.attachEvent('onchange', onChange);
}
function cleanup()
{
element.detachEvent('onfocus', onFocus);
element.detachEvent('onchange', onChange);
}
function onFocus()
{
element.select();
}
function onChange()
{
var n = parseInt(element.value.replace(/./,''));
if(!isNaN(n)) element.value = getFormatNumberVB(n);
}
//]]>
</SCRIPT>
</PUBLIC:COMPONENT>
****************************************************
魔界の仮面弁士さん、早速のレスありがとうございました。記述していただいたコードが大変参考になりました。どうもありがとうございました。
ツイート | ![]() |