sb.Append("{'fno':" + customer.fno + ",'town':" + customer.FtownId + ",'vill':" + customer.FvillId + ",'addr':" + customer.addr + ",'tel':" + customer.tel + ",'gname':" + customer.graveTemp.gname + ",'re':" + customer.Re + "");这是一串字符串 在前台调用取出对应的值填到文本框里面去。请问json格式的数据在前台如何读取。

解决方案 »

  1.   

    可以用服务器端控件:
    前台:
    <script type="text/javascript">
        <asp:Literal ID="LtlJson" runat="server"></asp:Literal>
    </script>后台:
    sb.Append("{'fno':" + customer.fno + ",'town':" + customer.FtownId + ",'vill':" + customer.FvillId + ",'addr':" + customer.addr + ",'tel':" + customer.tel + ",'gname':" + customer.graveTemp.gname + ",'re':" + customer.Re + "");
    this.LtlJson.Text = "var data = " + sb.ToString() + ";";也可以定义属性:
    //后台
    protected string JsonData
    {
        get
        {
             return "{'fno':" + customer.fno + ",'town':" + customer.FtownId + ",'vill':" + customer.FvillId + ",'addr':" + customer.addr + ",'tel':" + customer.tel + ",'gname':" + customer.graveTemp.gname + ",'re':" + customer.Re + "";
        }
    }// 前台
    <script type="text/javascript">
        var data = <%=JsonData %>
    </script>
      

  2.   

    Jquery:success:function(res){
                   alert(res.fno); //键值对 读取 键值         
       },
      

  3.   

    var json="{'fno':'fnoValue','town':'townValue','vill':'villValue','addr':'addrValue','tel':'telValue','gname':'gnameValue','re':'reValue'}";
    var jsonObj=eval("("+json+")");
    alert(jsonObj.fno+":"+jsonObj.town);
      

  4.   

    http://www.360doc.com/content/11/0608/19/987036_122520858.shtml
    楼主可以看看
      

  5.   

    var json="这是你后台传向前台的";
    var obj=eval("("+json+")");//这样obj就是一个json对象了