28,407
社区成员
发帖
与我相关
我的任务
分享
<%
set items=xxx("{item:[{content:{news_item:[{title:'xxx',content:'vvv'}]}},{content:{news_item:[{title:'222',content:'3333'}]}}]}")
for each data in items
Response.Write jsx(data,"title")&"--"&jsx(data,"content")
next
%>
<script language="javascript" runat="server">
function xxx(s){
var rtv=[];
var items=eval("("+s+")").item||[];
for(var i=0;i<items.length;i++){
var item=items[i].content||{};
item=item.news_item||[];
item=item[0];
if(item){
rtv.push(item);
}
}
return rtv;
}
function jsx(obj,key){
return obj[key]||"";
}
</script>
先谢谢你,title和content已经可以提取出来了
怎么提取“media_id”和“update_time”呢?
请大神赐教!{
"item": [
{
"media_id": "111111111111",
"content": {
"news_item": [
{
"title": "aaaaaaaaaa",
"content": "dasfasfasdf"
}
],
"update_time1": 1454771234
},
"update_time2": 1454771234
},
{
"media_id": "222222222222",
"content": {
"news_item": [
{
"title": "bbbbbbbb",
"content": "dasfasfasdf"
}
],
"update_time1": 1453449705
},
"update_time2": 1453449705
}
],
"total_count": 2,
"item_count": 2
}
这段json用四楼大神的方法已经成功提取出title和 content,
但是media_id、和update_time1及update_time2却无法提取,还请赐教!
<%
set items=xxx("{item:[{content:{news_item:[{title:'xxx',content:'vvv'}]}},{content:{news_item:[{title:'222',content:'3333'}]}}]}")
for each data in items
Response.Write jsx(data,"title")&"--"&jsx(data,"content")
next
%>
<script language="javascript" runat="server">
function xxx(s){
var rtv=[];
var items=eval("("+s+")").item||[];
for(var i=0;i<items.length;i++){
var item=items[i].content||{};
item=item.news_item||[];
item=item[0];
if(item){
rtv.push(item);
}
}
return rtv;
}
function jsx(obj,key){
return obj[key]||"";
}
</script>
看你有些属性不一定有 要特殊读取方式,vb容易歇菜
<%
set items=xxx("{item:[{content:{news_item:[{title:'xxx',content:'vvv'}]}},{content:{news_item:[{title:'222',content:'3333'}]}}]}")
for each data in items
Response.Write data.title&"--"&data.content
next
%>
<script language="javascript" runat="server">
function xxx(s){
var rtv=[];
var items=eval("("+s+")").item||[];
for(var i=0;i<items.length;i++){
var item=items[i].content||{};
item=item.news_item||[];
item=item[0];
if(item){
rtv.push(item);
}
}
return rtv;
}
</script>
asp可以运行js代码,妥妥的,最好用的服务器端开发方式<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="aspJSON1.17.asp"-->
<%
function readcontent(path)
dim fso,txtstream
set fso=server.CreateObject("scripting.filesystemobject")
set txtstream=fso.OpenTextFile(path)
readcontent=txtstream.readall
txtstream.close
set txtstream=nothing
set fso=nothing
end function
s=readcontent(server.MapPath("json.txt"))'''''''''''''''''''''注意修改这个变量为你的那些json字符串内容,我这里测试直接存入同目录下的json.txt里面了
Set oJSON = New aspJSON
oJSON.loadJSON(s)
response.Write "总数:"&oJSON.data("total_count")&"<br>新闻列表<hr>"
for each itemindex in oJSON.data("item")'遍历item数组
set item=oJSON.data("item").item(itemindex)
response.Write "media_id:"&item.item("media_id")&"<br>"
set content=item.item("content")
for each newsindex in content.item("news_item")
set newsitem=content.item("news_item").item(newsindex)
response.Write "title:"&newsitem.item("title")&"<br>"
response.Write "author:"&newsitem.item("author")&"<br>"
response.Write "content:"&newsitem.item("content")&"<br>"
'''更多属性。。。
next
response.Write "<hr>"
next
%>