问题描述
- VB6.0封ASP(不是ASPX)问题在类文件cls如何写runat=server代码
-
我用VB6.0封装ASP代码(不是ASPX),其中有一个代码需要为JSCRIPT,也就是解析JSON的代码<script language="jscript" runat="server"> Array.prototype.get = function(x) { return this[x]; }; function parseJSON(strJSON) { return eval("(" + strJSON + ")"); } </script>
正常情况下,在cls类文件中基本跟ASP写法一样,上述那段代码,如何在cls类文件中编写呢?求解.谢谢~~
楼下的代码是网络上找的ASP版本的VB脚本,好像满足不了需求
上面的JSCRIPT代码,是可以的.就是不知道如何写在VB类中
解决方案
解决方案二:
全部代码是,上述的代码好像过滤掉了部分内容
<script language="vbscript" runat=server>
Dim sc4Json
Sub InitScriptControl
Set sc4Json = CreateObject("MSScriptControl.ScriptControl")
sc4Json.Language = "JavaScript"
sc4Json.AddCode "var itemTemp=null;function getJSArray(arr, index){itemTemp=arr[index];}"
End Sub
Function getJSONObject(strJSON)
sc4Json.AddCode "var jsonObject = " & strJSON
Set getJSONObject = sc4Json.CodeObject.jsonObject
End Function
Sub getJSArrayItem(objDest,objJSArray,index)
On Error Resume Next
sc4Json.Run "getJSArray",objJSArray, index
Set objDest = sc4Json.CodeObject.itemTemp
If Err.number=0 Then Exit Sub
objDest = sc4Json.CodeObject.itemTemp
End Sub
Dim strTest
strTest = "{name:""alonely"", age:24,hello:function(){return '你好!';}, email:[""ycplxl1314@163.com"",""ycplxl1314@gmail.com""], family:{parents:[""父亲"",""母亲""],toString:function(){return ""家庭成员"";}}}"
Dim objTest
Call InitScriptControl'初始化MSScriptControl.ScriptControl组件
Set objTest = getJSONObject(strTest)'创建JSON对象
'对象属性操作
response.write objTest.name&"-"&objTest.age
'数组操作
getJSArrayItem email,objTest.email,0
response.write email
'执行方法
response.write objTest.hello()
response.write objTest.family.toString()
</script>
解决方案三:
非常感谢楼上资料,目测应该可以改写成功.先谢过,我改写测试测试