no, non ho trovato eccetto questo ma non funziona:
codice:
Public Function parseJSON(strjs)
dim a
strjs=trim(strjs)
if strjs="" then
parseJSON="null"
elseif left(strjs,1)="[" then
strjs=trim(mid(strjs,2,len(strjs)-2))
b=Split(strjs, ",")
Set a = jsArray()
for i=0 to Ubound(b)
if left(b(i),1)="[" or left(b(i),1)="{" then
set a(Null)=(new jsCore).parseJSON(b(i))
elseif left(avalue,1)="""" then
b(i)=trim(mid(b(i),2,len(b(i))-2))
a(Null)=b(i)
elseif IsNumeric(b(i)) then
a(Null)=b(i)
end if
next
set parseJSON=a
set a=nothing
elseif left(strjs,1)="{" then
strjs=trim(mid(strjs,2,len(strjs)-2))
b=Split(strjs, ":")
Set a = jsObject()
aname=trim(b(0))
avalue=trim(b(1))
if left(aname,1)="""" then
aname=trim(mid(aname,2,len(aname)-2))
if left(avalue,1)="[" or left(avalue,1)="{" then
set a(aname)=(new jsCore).parseJSON(avalue)
elseif left(avalue,1)="""" then
avalue=trim(mid(avalue,2,len(avalue)-2))
a(aname)=avalue
elseif IsNumeric(avalue) then
a(aname)=avalue
end if
set parseJSON=a
set a=nothing
end if
elseif left(strjs,1)="""" then
strjs=trim(mid(strjs,2,len(strjs)-2))
parseJSON=strjs
elseif IsNumeric(strjs) then
parseJSON=strjs
else
parseJSON="error"
end if
End Function
da inserire nella classe del file JSON_2.0.4.asp
e fuori dalla classe:
codice:
Function parseJSON(val)
set parseJSON = (new jsCore).parseJSON(val)
End Function
riesci a capire perchè non funziona?
mi da errore:
codice:
Microsoft VBScript runtime error '800a01a8'
Object required: '[string: "null"]'
/manager/memberfunc/JSON_2.0.4.asp, line 262
e la riga 242 è proprio questa:
codice:
Function parseJSON(val)
242---> set parseJSON = (new jsCore).parseJSON(val)
End Function