精华内容
下载资源
问答
  • ASP输出JSON

    2016-09-12 10:49:48
    ASP输出JSON
  • asp输出json格式,生成json对象。 json.asp格式化json类。ajax返回json格式数据
  • asp输出json对象实例

    热门讨论 2016-03-17 12:37:51
    asp输出json对象实例,用于生成json对象,不是json字符串
  • 关于asp输出json对象的方法及实例

    万次阅读 2016-03-17 12:30:12
    相信大家对于aspjson都不陌生,当下json应用的非常广泛,但asp语言中并没有可以直接生成json对象的方法,我在网上查了很多资料,关于asp生成json对象的方法,大多都写得很简单,大多很差强人意,有的虽然是写了...
    相信大家对于asp和json都不陌生,当下json应用的非常广泛,但asp语言中并没有可以直接生成json对象的方法,我在网上查了很多资料,关于asp生成json对象的方法,大多都写得很简单,大多很差强人意,有的虽然是写了关键的代码,但并没有实际的案例可供参考。现在我就把我实现的代码贴出来供大家参考。
    


    1.目的:用asp得到json对象:

    {"total":17,"rows":[{"News_ID":54,"NewsType_id":78},{"News_ID":55,"NewsType_id":78},{"News_ID":56,"NewsType_id":78},{"News_ID":57,"NewsType_id":78},{"News_ID":58,"NewsType_id":78},{"News_ID":59,"NewsType_id":78},{"News_ID":60,"NewsType_id":78},{"News_ID":61,"NewsType_id":78},{"News_ID":62,"NewsType_id":78},{"News_ID":63,"NewsType_id":78},{"News_ID":64,"NewsType_id":78},{"News_ID":65,"NewsType_id":78},{"News_ID":106,"NewsType_id":78},{"News_ID":107,"NewsType_id":78},{"News_ID":126,"NewsType_id":78},{"News_ID":192,"NewsType_id":78},{"News_ID":194,"NewsType_id":78}]}

    这是我们将得到的json数据。


    2.需要引用的文件

      后台需要引入json类文件:  json.asp   ,   

      前台需要引入常用的文件: json2.js<mrak: 这个文件可以到json官网去下载> ,  jquery.js<mark: 这个文件太常见了,不用我说了吧> 


    3.后台程序代码:(关键的来了)

    index_json.asp 页面代码:

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    <% Response.Addheader "Content-Type","text/html; charset=utf-8"  %>
    <!--#include file="inc/json.asp"-->
    <!--#include file="inc/Conn.asp" -->
    <%
        Dim sql_class,sql_top,sql_colums,sql_whereBy,sql_orderBy
        sql_class = request.Item("sql_class")
        sql_top = request.Item("sql_top")
        sql_colums = request.Item("sql_colums")
        sql_whereBy = request.Item("sql_whereBy")
        sql_orderBy = request.Item("sql_orderBy")
    
        Sql="select "&sql_top&" "&sql_colums&" from "&sql_class&" where 1=1 "&sql_whereBy&" "&sql_orderBy
    %>
    
    <%
        Set Rs = Server.CreateObject("ADODB.Recordset")      
        Rs.Open sql,conn,1,3 
        jsonStr = ""
        rows = ""
    
        Dim i,json_rows,json_ret,arr_rows
        Dim myArray()
        Redim myArray(rs.recordcount-1) '将数组大小重新定义为20
        Set jsonObj=New json
        jsonObj.toResponse=False
        Set json_ret = server.createobject("scripting.dictionary")        
        For i=0 To rs.recordcount-1
            Set myArray(i) = server.createobject("scripting.dictionary")
            For Each e In rs.Fields                
                    'rows = rows &""""& e.Name & """:""" & replace(e.value,chr(34),"@_'_@") & """," 
                    myArray(i).Add e.Name,e.value  '将key/value加到行数组对象中
            Next   
            Rs.movenext
        Next       
        json_ret.Add "total",rs.recordcount
        json_ret.Add "rows",myArray 
        jsonStr = jsonObj.toJSON(Empty,json_ret,False)
    
        response.Write jsonStr
    
    %>

    上面的代码是将数据库中的数据取出来并将数据保存为json对象,这里面用到了  dictionary ,目前还没有别的办法生成多层级的json数据,只能用它来生成了。 有人说我可以将数据库的数据取出来然后拼接成json数据格式。 对,没错,我也尝试过,但是你会发现,它生成的永远都是string字符串,不是对象,异步获取json格式或者将这个数据传给一些插件的时候你会发现你怎么也得不到想要的结果,原因就在于格式不正确,你得到的是json string,不是json object。 那又有人说了,我可以在异步获取到这个json string之后再将该数据用eval方法转成json对象,对,没错,是可以。 弊端是有的,而且你会发现很头疼的。 这个问题在稍后的文章里面我会再来解释。


    4.接下来我们要做的就是将生成的json对象数据异步获取并显示到前台的dom中,看一下demo:

    文件名 ajaxShow.html

    <!DOCTYPE html>
    <html lang="zh-cn">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalabel=no" />
        <meta name="renderer" content="webkit" />
        <script type="text/javascript" src="js/json2.js"></script>
        <script type="text/javascript" src="js/jquery.js"></script>
        <style type="text/css">
            body
            {
                min-width: 1020px;
                font-size: 14px;
                background: #fff;
                font-family: "微软雅黑" ,Microsoft Yahei;
                background: #000;
                padding:20px;
                margin:20px;
            }
            .tips
            {
                margin:20px;
                width: 50%;
                height: auto;
                margin: 10px auto;
                border: 1px solid #fff;
                padding: 20px 5px;
                font-size: 16px;
                color: #fefefe;
                background: rbga(220,220,220,0.8);
                word-wrap:break-word;
            }
            .text-center{ text-align:center}
            .min-height{ min-height:300px; }
            .radius
            {            
                border-radius:5px;
                }
            .font-blue
            {
                color: #034C9A;
            }
        </style>
        <script type="text/javascript">
            var url = "http://localhost:701/index_json.asp"
            var relations = {
                sql_class: "Web_News", //表名
                sql_top: "",  //取数据总条数 top 10
                sql_colums: "News_ID,NewsType_id", //列名,用","隔开,如果全部获取,则填写"*" 
                sql_whereBy: "and NewsType_id=78",
                sql_orderBy: "order by News_ID asc"
            }
            $.post(
                url,
    	    relations,
                function (data) {
                    $('#ajax_data').html(JSON.stringify(data));
                    var total = data.total;
                    //$('#ajax_data').html(total);
                }
            , "json"
            );
    
                function strToJson(str) {
                    var json = eval('(' + str + ')');
                    return json;
                } 
        </script>
    </head>
    <body>
        
        <div id="header" class="tips radius text-center">
            <b>asp生成json对象并异步获取json对象数据 实例</b>
        </div>
        <div id="Div1" class="tips radius">
            以下将显示异步获取的内容:
        </div>
        <div id="ajax_data" class="tips radius min-height">
        </div>
    </body>
    </html>
    
    文件的引用和css我就不说了。关键在于ajax部分,这里我用的是jquery中的$.post()方法,有2出关键点: 第一, url ,相信这个大家都会写对吧,就是你请求的数据源页面,我们的例子中为刚才我们建立的 ajax_index.asp; 第二, 'json',这个参数大家可以查一下jquery关于ajax异步获取部分的手册。该参数就是为了保证生成的数据为json对象。

    其中你会发现

    JSON.stringify(data)
    这个就是json2.js  json类文件中的方法,该方法就是将json对象转为string类型,以便将结果显示到dom里面。 运行一下http://localhost:701/ajaxShow.html,是不是已经得到了我们想要的数据。

    这是我们全部的数据,当然我们怎么知道我们获取的是json对象呢,只需要试试data.total能不能获取到就知道了啦;我们改一下$.post()中的代码:

    //$('#ajax_data').html(JSON.stringify(data));
                    var total = data.total;
                    $('#ajax_data').html(total);
    在刷新一下看看,是不是得到了 17;


    哈哈,果然是得到啦  !  好了,该介绍的就介绍完了,关于问什么不用拼接的方法得到json格式的字符串,期待下一篇文章。

    源码下载

    展开全文
  • 首先ASP处理JSON需要json官方提供的JSON For ASP 封装类文件,下载地址:http://code.google.com/p/aspjson/downloads/list ...1.ASP简单JSON对像及数组输出 Demo1.asp <%@LANGUAGE=”VBSCRIPT” COD...

    首先ASP处理JSON需要json官方提供的JSON For ASP 封装类文件,下载地址:http://code.google.com/p/aspjson/downloads/list

    下载最新的JSON_2.0.4.asp文件备用。

    1.ASP简单JSON对像及数组输出

    Demo1.asp

    <%@LANGUAGE=”VBSCRIPT” CODEPAGE=”65001″%>
    <% Response.Charset = “UTF-8″ %>
    <% Response.ContentType = “text/JSON” %>
    <!–#include file=”../Inc/JSON_2.0.4.asp”–>
    <%
    Dim Json,Array(4)
    Set Json = jsObject()
    Json(“Title”) = ” ASP输出JSON数据及客户端jQuery 处理方法”
    Json(“Url”) = “#”
    Json(“PubDate”) = Now()
    Array(0) = “QQ空间”
    Array(1)= “腾讯微博”
    Array(2)= “新浪微博”
    Array(3)= “网易微博”
    Array(4)= “搜狐微博”
    Set Json(“Share”) = jsArray() ‘数组对像
    Json(“Share”) = Array ‘ASP数组直接传给JSON数组对像
    Json.Flush
    Set Json = Nothing
    %>

    前台请求页面Demo1.html

    <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
    <html xmlns=”http://www.w3.org/1999/xhtml”>
    <head>
    <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
    <title>ASP输出JSON数据及客户端jQuery 处理方法</title>
    <script type=”text/javascript” src=”../Scripts/jquery-1.7.2.min.js”></script>
    <script type=”text/javascript”>
    $(document).ready(function(){
    $(“#btn”).click(function(){
    $.getJSON(“Demo1.asp”,function(data){
    $(“#View”).html(“标题:”+data.Title+”<br />URL:”+data.Url+”<br />时间:”+data.PubDate+”<br />分享:”);
    $.each(data.Share,function(i,n){//遍历数组
    $(“#View”).append(n + ” | “);
    });
    });
    });
    });
    </script>
    </head>

    <body>
    <input type=”button” id=”btn” value=”显示” />
    <div id=”View”></div>
    </body>
    </html>

    是不是很简单呀?

    2.ASP数据库数据输出JSON

    Demo2.asp

    <%@LANGUAGE=”VBSCRIPT” CODEPAGE=”65001″%>
    <% Response.ContentType = “application/json; charset=utf-8″ %>
    <!–#include file=”../Inc/JSON_2.0.4.asp”–>
    <!–#include file=”../Inc/Conn.asp”–>
    <%
    Function QueryToJSON(dbc, sql) ‘此函数来自JSON官方JSON_UTIL_0.1.1.asp
    Dim rs, jsa
    Set rs = dbc.Execute(sql)
    Set jsa = jsArray()
    While Not (rs.EOF Or rs.BOF)
    Set jsa(Null) = jsObject()
    For Each col In rs.Fields
    jsa(Null)(col.Name) = col.Value
    Next
    rs.MoveNext
    Wend
    Set QueryToJSON = jsa
    End Function

    SQLstr = “SELECT U_ID,U_Name,U_Age,U_Sex FROM User LIMIT 0,10″  ’这里使用的是MySQL数据库

    Response.Write QueryToJSON(Conn, SQLstr).Flush
    %>

    前台页面Demo2.html

    <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
    <html xmlns=”http://www.w3.org/1999/xhtml”>
    <head>
    <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
    <title>ASP输出JSON数据及客户端jQuery 处理方法</title>
    <script type=”text/javascript” src=”../Scripts/jquery-1.7.2.min.js”></script>
    <script type=”text/javascript”>
    $(document).ready(function(){
    $(“#btn”).click(function(){
    $.getJSON(“Demo2.asp”,function(data){
    $.each(data,function(i,n){
    var $tr = $(“#View”).find(“tr.Demo”).clone();
    $tr.removeClass(“Demo”);
    $tr.find(“td:eq(0)”).text(n.U_ID);//第一个td
    $tr.find(“td:eq(1)”).text(n.U_Name);
    $tr.find(“td:eq(1)”).text(n.U_Name);
    $tr.find(“td:eq(2)”).text(n.U_Age);
    $tr.find(“td:eq(3)”).text(n.U_Sex);
    $(“#View”).append($tr);
    });
    $(“#View”).find(“tr.Demo”).remove();//移除空行
    });
    });
    });
    </script>
    </head>

    <body>
    <input type=”button” id=”btn” value=”显示” />
    <table width=”360″ border=”1″ id=”View”>
    <tr>
    <td align=”center”><strong>ID</strong></td>
    <td align=”center”><strong>姓名</strong></td>
    <td align=”center”><strong>年龄</strong></td>
    <td align=”center”><strong>性别</strong></td>
    </tr>
    <tr class=”Demo”>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    </table>
    </body>
    </html>

    ASP利用JSON官方类输出JSON就是这么简单。

    本例在Windows 2008R2+MySQL5.5+ASP环境下测试通过。

    http://code.google.com/p/aspjson/ 有详细的说明和下载,希望本文对您的ASP编程有所帮助。

    展开全文
  • english.ASP连接数据库,并以JSON格式输出数据。 english.HTML使用jQuery的AJAX异步请求获取JSON格式的英语九百句数据,并将其进行本地存储localstorage。 1.定时随机输出一条中英对照语句。 2.jQuery分页输出...

    english.mdb英语九百句示例。

    english.ASP连接数据库,并以JSON格式输出数据。

    english.HTML使用jQuery的AJAX异步请求获取JSON格式的英语九百句数据,并将其进行本地存储localstorage。

    1.定时随机输出一条中英对照语句。

    2.jQuery分页输出全部记录。

    ---------------------------------------------

    english.ASP

    <%@CODEPAGE="65001"%>
    <%
    Response.charset="utf-8"
    Set conn = Server.CreateObject("ADODB.Connection")
    conn.provider="sqloledb"
    conn.open "server=192.168.1.100; uid=sa; pwd=123;Database=test"
    
    Set rs=Server.CreateObject("ADODB.RecordSet")
    rs.open "select * from english",conn,1,1
    total=rs.recordcount
    '==输出JSON格式数据==============
    'json封装时需要注意干扰符号",[]{}之类的。需要对其进行编码解码。
    'Response.Write("{""total"":""92"",""content"":[")
    Response.Write("[")
    For i=0 To total-1
    	Response.Write("{")
    	For j=0 To rs.fields.count-1
    		Response.Write(""""&rs(j).name&""":"""&escape(rs(j))&"""")
    		IF (j<rs.fields.count-1) Then Response.Write(",")
    	Next
    	Response.Write("}")
    	If i<total-1 Then Response.Write(",")
    	rs.movenext
    Next
    Response.Write("]")
    
    %>


    english.HTML

    <!DOCTYPE html>
    <html >
     <head>
      <title> 英语九百句--ajax/localstorage </title>
      <meta charset="utf-8">
      <script src="/js/jquery-1.11.3.min.js" type="text/javascript"></script>
     </head>
    <script type="text/javascript">
    var local_content;
    	//获取当前localstorage数量:localStorage.length
    	//获取localstorage各个名称:localStorage.key(2)
    	//获取localstorage变量内容:localStorage.getItem("xxxx")
    	//删除localstorage变量:localStorage.removeItem("xxxx")
    	//清除localstorage:		localStorage.clear();
    	//alert(localStorage.getItem("content"));
    	//javascript 大小写敏感:对象、数组、变量、字段名
    	//json封装时需要注意干扰符号",[]{}之类的。需要对其进行编码escape解码unescape。
    $(function(){
    	if (localStorage.getItem("content")==null )	{
    		setstorage("content");
    	}else{
    		local_content= JSON.parse(localStorage.getItem("content"));
    		rnd_list();
    	}
    });
    function setstorage(id){
    	$.getJSON("ss.asp",function(data){
    		localStorage.setItem(id,JSON.stringify(data));  
    	});
    }
    function rnd_list(){
    	var n=Math.floor(Math.random()*local_content.length);
    	$("#res").html(unescape(local_content[n].English)+"<br>"+unescape(local_content[n].Chinese));
    	setTimeout(function(){rnd_list();},3000);
    }
    
    </script>
    
     <body>
    	 <div id="res" ></div>
     </body>
    </html>
    



    展开全文
  • English.asp:连接数据库、读取记录集、输出JSON格式数据 Response.charset="utf-8" Set conn = Server.CreateObject("ADODB.Connection") conn.provider="microsoft.ace.oledb.12.0" conn.open server.m

    以英语九百句English.mdb数据库为例。

    English.asp:连接数据库、读取记录集、输出JSON格式数据

    <%@CODEPAGE="65001"%>
    <%
    Response.charset="utf-8"
    Set conn = Server.CreateObject("ADODB.Connection")
    conn.provider="microsoft.ace.oledb.12.0"
    conn.open server.mappath("/db/english.mdb")
    
    Set rs=Server.CreateObject("ADODB.RecordSet")
    rs.open "select * from sentence",conn,1,1
    total=rs.recordcount
    '==输出JSON格式数据==============
    'json封装时需要注意干扰符号",[]{}之类的。需要对其进行编码解码。
    'Response.Write("{""total"":""92"",""content"":[")
    Response.Write("[")
    For i=0 To total-1
    	Response.Write("{")
    	For j=0 To rs.fields.count-1
    		Response.Write(""""&rs(j).name&""":"""&escape(rs(j))&"""")
    		IF (j<rs.fields.count-1) Then Response.Write(",")
    	Next
    	Response.Write("}")
    	If i<total-1 Then Response.Write(",")
    	rs.movenext
    Next
    Response.Write("]")
    
    %>
    english.html 使用jQuery.get异步获取English.asp数据,并进行本地存储localstorage,随机显示一条记录定时刷新(分页显示到页面*).
    <!DOCTYPE html>
    <html >
     <head>
      <title> 英语九百句--ajax/localstorage </title>
      <meta charset="utf-8">
      <script src="http://eduppp.cn/js/jquery-2.1.4.min.js" type="text/javascript"></script>
     </head>
    <script type="text/javascript">
    var local_content;
    	//获取当前localstorage数量:localStorage.length
    	//获取localstorage各个名称:localStorage.key(2)
    	//获取localstorage变量内容:localStorage.getItem("xxxx")
    	//删除localstorage变量:localStorage.removeItem("xxxx")
    	//清除localstorage:		localStorage.clear();
    	//alert(localStorage.getItem("content"));
    	//javascript 大小写敏感:对象、数组、变量、字段名
    	//json封装时需要注意干扰符号",[]{}之类的。需要对其进行编码escape解码unescape。
    $(function(){
    	if (localStorage.getItem("content")==null )	{
    		setstorage("content");
    	}else{
    		rnd_list();
    	}
    });
    function setstorage(id){
    	$.getJSON("english.asp",function(data){
    		localStorage.setItem(id,JSON.stringify(data)); 
    		rnd_list(); 
    	});
    }
    function rnd_list(){
    	local_content= JSON.parse(localStorage.getItem("content"));
    	var n=Math.floor(Math.random()*local_content.length);
    	$("#res").html(unescape(local_content[n].English)+"<br>"+unescape(local_content[n].Chinese));
    	setTimeout(function(){rnd_list();},3000);
    }
    
    </script>
    
     <body>
    	 <div id="res" ></div>
     </body>
    </html>
    

    ===========

    分页显示(待续)

    展开全文
  • 主要介绍了asp实现读取数据库输出json代码的方法的相关资料,需要的朋友可以参考下
  • asp.net输出json

    万次阅读 2011-06-12 15:28:00
    今天在项目中要使用到jquery来操作json,首先通过jquery的ajax来请求asp.net输出数据json格式,之后jquery来 操作json数据。首先看下asp.net的文件CustomerEdit_sale.aspx后台代码: Code [ protected void Page_...
  • ASP.NET输出Json格式数据

    千次阅读 2015-05-06 15:46:49
    public partial class WebForm1 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //ASP.NET输出JSON格式数据示例 //1:自带的JavaScriptSerialize
  • ASP从数据库直接输出json 以,区分多行在最后一行去掉, ``` ([ dim conn,connstr,rs,sql set conn = Server.CreateObject("Adodb.Connection") connstr = "Provider=SQLOLEDB;data source=127.0.0.1;initial...
  • asp做WebService,从数据库中读取数据库以JSON格式输出数据,作为android的webservice
  • aspJSON3.8.1.zip

    2018-06-17 06:58:18
    asp输出json对象类,aspJSON3.8.1。asp输出json对象类,aspJSON3.8.1。
  • ASP.NET Hashtable输出JSON格式数据 - 贵源网络 - 博客园 ASP.NET Hashtable输出JSON格式数据 - 贵源网络 - 博客园ASP.NET Hashtable输出JSON格式数据 ...
  • 后台使用的是ASP.NET,因为项目相对较小,所有 后台没有使用数据库,使用的XML来保存数据。前台需要请求后台返回JSON格式的数据,比如要求返回一个eventslist,后台操作XML的方法省 略。主要讨论如何使用H...
  • ASP 向js传递json对象 需要先字符串拼接成json形式的字符串 然后前台利用函数转化成json对象 比如需要这样效果的json对象 series: [ { name:'邮件营销', type:'line', data:[120, 132, 101, 134, 90, 230, ...
  • 做个小小练习,为asp.net mvc视图输出json字符串: 创建JsonResult操作: 创建此视图:   浏览结果:  
  • 工具数据库已包含,只需在iis挂上网站站点,然后修改根目录下的ajaxShow.html的66行,url修改成自己的站点网址,就可以测试

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,743
精华内容 5,497
关键字:

asp输出json