主要將代碼粘貼,通過閱讀代碼理解其中的相關邏輯。
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;
}
}
}
此處效果即為,在輸入框中輸入相關文字,點擊提交,下方會自動將書寫的文字進行展示,無需跳轉其他頁面。