URL中傳遞JSON數據


有關於JSON如何在前后之間進行傳遞,轉換成對象等操作,請查看  C#Json數據交互   (這篇文章主要介紹了如何轉化Json格式的數據,以及如何使用)

我們在URL中傳遞數據一般都是 XX.aspx?A=1&B=2&C=你   這樣傳遞中文也沒關系,我們在后台利用Request.QueryString["C"]接收就可以了。瀏覽器會自動幫我們解碼。

如果參數過多,這樣拼接也不是很方便,這個時候我們就可以把所有的參數和值寫成Json格式,然后進行傳值  XX.aspx?json={"1",1,"2","2"},如果像這樣寫,接收的時候就只用接收一個參數了。

Json在URL中傳值注意事項:

 1,需要把Json字符串進行編碼然后在傳遞,如果不編碼,接收的時候是接收不到的,接收只有一個字符  {

 2, 如果Json字符串中出現了中文,我們在后台是無法解碼的,因為編碼個轉碼格式不一致造成

 查看ListJson    這個DLL里面有個JsonData 類可以幫助我們快速生成JSON格式和接收JSON數據

例如:

  <div>
            <a href="WebForm1.aspx?jsonData=<%=json %>">后台寫JOSN傳值</a>
            <div id="test" style="width: 150px; height: 150px; border: solid 1px red;">
                JS傳值
            </div>
        </div>
        <script src="../jquery.min.js"></script>
        <script>
            $("#test").click(function () {
                var json = {
                    Name: "李某",
                    Age: 22,
                    Like: "Movies"
                }
                document.location.href = "WebForm1.aspx?jsonData=" + escape(JSON.stringify(json));//編碼傳值

            });
        </script>

 

 

 頁面效果

 

接受頁面:

后台接收Json格式

 

我們解碼不出來中文,只能使用 data["Name"]方式得到中文。

JS接收Json格式

 

效果:

①點擊  后台傳遞JSON   后台解碼中文不出來

 

 ②點擊 JS傳值  后台可以解碼成功

 

我們用JS接收傳遞的json,然后轉成對象

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM