本文目录一览:
- 1、vb来操作HTML中的javascript代码
- 2、VB 运行JS脚本
- 3、VB里js是什么意思?比如private sub js()
- 4、怎么样在VB中直接调用JavaScript
- 5、用VB写一个能被JavaScript调用的DLL
- 6、利用vb里面加入自己编写的JavaScript程序。怎么弄?
vb来操作HTML中的javascript代码
Dim code As Object
Set code = CreateObject("ScriptControl")
code.Language = "JavaScript"
查询一下如何使用 VBS ScriptControl
VB/VBS 动态执行 代码
我们有时候需要在程序中动态执行一段string类型的代码,类似js中的eval函数,
下面的操作可以满足这一要求。
(有一点要注意,ScriptControl 调用的是vbs,有的vb的函数不能用,如val )
我们需要使用ScriptControl
在部件中添加MS Script Control 1.0
在窗体中添加一个MS Script Control
使用方法如下:
ScriptControl1.Language = "VBScript" '定义语言
ScriptControl1.AddObject "Text1", Text1 '添加控件,否则在执行时无法调用,
'需要什么控件添加什么就行
ScriptControl1.ExecuteStatement("Text1.Text=""12345""") '执行语句
也可以用ScriptControl1.AddCode来添加函数
如:
ScriptControl1.AddObject "Label1", Label1
ScriptControl1.AddCode "sub Test() label1=""hello"" end sub" '定义了一个函数test
ScriptControl1.Run ("test") '调用函数test甚至可以给添加的函数加上参数,如:
ScriptControl1.AddObject "Label1", Label1
ScriptControl1.AddCode "sub test(str)" vbCrLf " label1=str " vbCrLf " end sub"
ScriptControl1.Run "test", "Hello" '第二个参数是一个Variant型的数组,用来传递函数test的参数
VB 运行JS脚本
试试这个 Private Function Unescape(ByVal pstrInput As String) As String
Dim objScrCtl As Object
Set objScrCtl = CreateObject("MSScriptControl.ScriptControl")
objScrCtl.Language = "JavaScript"
Unescape = objScrCtl.Eval("unescape('" pstrInput "')")
Set objScrCtl = Nothing
End Function
VB里js是什么意思?比如private sub js()
VBA的代码和vbs、js的代码虽然在语法有相似之处,但是结构完全不一样,VBA为编译代码,脚本为解释代码,两者不能实现直接交互,只能通过间接交互实现
这里通过VBScript修改浏览器标题,触发VB内部的TitleChange而实现交互
网页代码:
a onclick=VBScript:document.title="VB:test('X','Y','Z')"文字/a
窗体代码:
Option Compare Text
Private Function Test(S1, S2, S3)
MsgBox S1 S2 S3
End Function
Private Sub Form_Load()
WebBrowser1.Navigate "e:\1.htm"
End Sub
Private Sub WebBrowser1_TitleChange(ByVal Text As String)
If Left(Text, 3) = "VB:" Then
Dim s As String, fncName As String, l As Long, args
s = Mid(Text, 4)
s = Replace(s, "(", " ")
s = Replace(s, ")", " ")
l = InStr(s, " ")
fncName = Trim(Left(s, l - 1))
args = Split(Mid(s, l), ",")
For i = 0 To UBound(args)
args(i) = Trim(args(i))
Next
Select Case fncName
Case "test"
Test args(0), args(1), args(2)
End Select
Else
Caption = Text
End If
End Sub
怎么样在VB中直接调用JavaScript
Private Sub Form_Load()WebBrowser1.Navigate " "End SubPrivate Sub Command1_Click()Set WBDocument = WebBrowser1.DocumentWBDocument.parentWindow.execScript "formSub()", "javascript"'调用End Sub
用VB写一个能被JavaScript调用的DLL
'创建一个active dll工程,将默认的类名class1改成TestPass,工程名改为Testdll,然后添加如下代码:
Public Function pass(a, b) As Integer
pass = Val(a) * Val(b)
End Function
编译成Testdll.dll,用regsvr32注册
建立一个html文件,内容为:
script
var result,mylen,ret;
var activedll = new ActiveXObject("Testdll.TestPass");
result = activedll.pass(9,2);
alert(result);
/script
双击html文件运行,有安全警告提示的话点是放过。
代码下载:
利用vb里面加入自己编写的JavaScript程序。怎么弄?
在Visual Studio中打开一个已经存在的asp.net应用程序。
然后打开Internet 信息服务(IIS)管理器,把“启用 ASP 服务器端脚本调试”和“启用 ASP 客户端脚本调试”两个复选框选中即可。
JavaScript(缩写为JS)是一种高级的、多范式、解释型的编程语言,是一门基于原型、函数先行的语言,它支持面向对象编程、命令式编程以及函数式编程。它提供语法来操控文本、数组、日期以及正则表达式,不支持I/O(比如网络、存储和图形等),但可以由它的宿主环境提供支持。它已经由ECMA(欧洲计算机制造商协会)通过ECMAScript实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器支持。