• Json实现异步请求(提交评论)


    主要将代码粘贴。通过阅读代码理解当中的相关逻辑。

    html代码:

    <form id="form1" runat="server">
        <p>
            评论:</p>
        <p>
            姓名:<input type="text" name="username" id="username1" /></p>
        <p>
            内容:<textarea name="content" id="content" rows="2" cols="20"></textarea></p>
        <p>
            <input type="button" id="send" value="提交" /></p>
        </form>
        <div class="comment">
            已有评论:</div>
        <div id="resText">
        </div>

    js代码:

                $("#send").click(function () {
                    $.get("doSave.ashx", {<span style="white-space:pre">	</span>  <span style="font-family: Arial, Helvetica, sans-serif;">	</span>//调用json插件
                        u_name: $("#username1").val(),       //json数据/值对化
                        u_cont: $("#content").val()
                    }, function (data) 
                        var uName = data.username;       //注:此处的username与doSave.ashx中的dic.add("username",uname)中的username相相应的
                        var uCont = data.content;
                        var txtHtml = "<div class='comment'><h6>"
                                       + uName + ":</h6><p class='para'>"
                                       + uCont + "</p></div>"
                        $("#resText").html(txtHtml);  //将返回的数据加入到页面上
                    }, "json");
                })

    插件代码:

    <%@ WebHandler Language="C#" Class="doSave" %>
    
    using System;
    using System.Web;
    
    public class doSave : IHttpHandler
    {
    
        public void ProcessRequest(HttpContext context)
        {
    
            var dic = new System.Collections.Generic.Dictionary<string, object>();    //存储的集合
            string jsonStr = "{}";                     //新建字符串jsonStr
    
            context.Response.ContentType = "text/json";          //定义返回的内容类型为json
    
            string uname = context.Request.QueryString[0];       //获取请求參数中第一个參数,也能够直接使用uname
    
            string commet = context.Request.QueryString[1];      //定义字符串uname、commet为context请求查询的字符串context.Request.Params["username"];QyertStrubg:查询字符串
    
            dic.Add("username", uname);                      //将字符串加入到对象中
    
            dic.Add("content", commet);
    
            jsonStr = Newtonsoft.Json.JsonConvert.SerializeObject(dic);     //序列化集合为json字符串
    
            context.Response.Write(jsonStr);
        }
    
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    
    }


    此处效果即为。在输入框中输入相关文字,点击提交,下方会自己主动将书写的文字进行展示。无需跳转其它页面。


  • 相关阅读:
    架构师速成-怎样高效编程
    【论文笔记】Leveraging Datasets with Varying Annotations for Face Alignment via Deep Regression Network
    Redis数据类型--List
    python命令行传入参数
    python 连接ORacle11g
    sqlserver2016 kb补丁
    linux cat 文件编码
    python gtk 环境
    openstack kvm cannot set up guest memory 'pc.ram': Cannot allocate memory
    Mysql Explain 详解(转)
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/7118331.html
Copyright © 2020-2023  润新知