当前位置:K88软件开发文章中心编程语言AspAsp01 → 文章内容

asp处理json对象中多条记录的数组的简单方法

减小字体 增大字体 作者:wangsdong     来源:asp编程网  发布时间:2018-12-30 8:34:47

今天弄asp处理json对象,本来找了一个使用MSScriptControl.ScriptControl的例子,由于64位win7系统的原因,一直没有测试成功,不过只要是32位系统,应该没有问题。后来需要这个功能,考虑换系统的麻烦,最后换了一个写法:
这里介绍一条记录的json和多条记录的json的asp处理方法
一条记录的json对象的处理方法:
<
script language="jscript" runat="server">
function getjson(str)
{ try
{ eval("var jsonStr = (" + str + ")")
}catch(ex)
{ var jsonStr = null
} return jsonStr
}<
/script>
<
%set obj = getjson("
{name:'anlige'}")response.write obj.name%>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)

 

多条记录的Json对象的处理方法:

<
script language="jscript" runat="server">
Array.prototype.get = function(i)

return this[i]
}
function getjson(str)

try

 
eval("var jsonStr = (" + str + ")")
 
}catch(ex)

 
var jsonStr = null
 

return jsonStr
}<
/script>
<
%str="
{""postPrice"":[
{""Productid"":1,""Productname"": ""手机"",""Price"":25.5,""num"": 1000,""url"":""http://www.baidu.com""},

{""Productid"":2,""Productname"": ""相机"",""Price"":75,""num"": 2000,""url"":""http://www.K88.NET""}]}"str=right(str,len(str)-instr(str,"[")+1)str=left(str,InstrRev(str,"]"))dim objset obj = getjson(str)str0=""for i=0 to obj.length-1 
str0=str0&
"ID="&
obj.get(i).productid&
"<
br>

 
str0=str0&
"ProductName="&
obj.get(i).Productname&
"<
br>

str0=str0&
"Price="&
obj.get(i).Price&
"元<
br>

str0=str0&
"num="&
obj.get(i).num&
"台<
br>

str0=str0&
"url="&
obj.get(i).url&
"<
br>
<
br>
"nextresponse.write str0%>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)


 



asp处理json对象中多条记录的数组的简单方法