.net Ajax與後臺一般處理程式(ashx) 互動
本文主要實現無動態重新整理查詢後臺資料功能,主要用到ajax+ashx+sqlserver進行互動.
首先需要引用Jquery:
<script language="javascript" type="text/javascript" src="../js/jquery.js">
html指令碼:
<asp:TextBox ID="tb_corpName" runat="server" MaxLength="100" Width="369px"></asp:TextBox>
前臺通過一個事件來呼叫ashx:
<script type="text/javascript"> $(function () { $("#tb_corpName").blur(function () { //滑鼠失去焦點事件 var corpName = $("#tb_corpName").val(); $.ajax({ type: "post", //提交方式 url: "/ashx/FZGpyShowData.ashx", //一般處理程式的路徑 data: { corpName: corpName }, //向後臺傳入的值 dataType: "json", //返回值格式 success: function (data) { //返回成功後將要做的事,這裡是返回一個表 $("#tb_CreditCode").val(data[0].CreditCode); $("#tb_corpCode").val(data[0].CorpCode); $("#tb_linkTel").val(data[0].LinkPhone); $("#corpProvince option[text='" + data[0].StateName + "']").attr("selected", true); showCity(); $("#corpCity option[text='" + data[0].AdminAreaName + "']").attr("selected", true); $("#tb_address").val(data[0].Address); $("#tb_linkMan").val(data[0].LinkMan); $("#tb_Mobile").val(data[0].LinkMobile); } }); }) }) </script>
後臺來接收前臺傳過來的值,對其進行操作:
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; string corpName = context.Request["corpName"].Trim().ToString(); //接收前臺傳過來的引數 if (corpName != "") { string sql = @"select top 1 CorpName,CreditCode,CorpCode,LinkPhone,StateName,AdminAreaName,LinkMan,LinkMobile,Address from tbProductOrder as a inner join tbStateDic as b on a.StateNum = b.StateNum inner join tbAdminAreaClass on a.CityNum = AdminAreaClassID where CorpName [email protected] order by CorpName"; SqlParameter[] par = new SqlParameter[1]; par[0] = new SqlParameter("@CorpName", corpName); DataSet ds = DBHerpler.Load(sql, par); string json = SerializerHelper.ToJsonString(ds.Tables[0]); //返回json型別的資料 context.Response.Write(json); context.Response.End(); } }
SerializerHelper類的定義:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Text; using System.IO; using System.Xml.Serialization; using Newtonsoft.Json; /// <summary> /// SerializerHelper 的摘要說明 /// </summary> public static class SerializerHelper { /// <summary> /// 反序列化XML檔案 /// </summary> public static T LoadFromXmlFile<T>(string filepath) where T : class { using (FileStream stream = new FileStream(filepath, FileMode.Open, FileAccess.Read)) { XmlSerializer serializer = new XmlSerializer(typeof(T)); return (T)serializer.Deserialize(stream); } } /// <summary> /// 反序列化XML字串 /// </summary> public static T LoadFromXmlString<T>(string xml) where T : class { XmlSerializer serializer = new XmlSerializer(typeof(T)); byte[] bytes = Encoding.UTF8.GetBytes(xml); using (MemoryStream stream = new MemoryStream(bytes)) { return (T)serializer.Deserialize(stream); } } /// <summary> /// 序列化XML物件 /// </summary> public static string SaveToXmlString<T>(T entity) where T : class { using (MemoryStream stream = new MemoryStream()) { XmlSerializer serializer = new XmlSerializer(typeof(T)); serializer.Serialize(stream, entity); return Encoding.UTF8.GetString(stream.ToArray()); } } /// <summary> /// 序列化Json物件 /// </summary> public static string ToJsonString(object obj) { return ToJsonString<object>(obj); } /// <summary> /// 序列化Json物件 /// </summary> public static string ToJsonString<T>(T obj) where T : class { string text = JsonConvert.SerializeObject(obj); return text; } /// <summary> /// 反序列化Json字串 /// </summary> public static T ToJsonObject<T>(string text) where T : class { T obj = (T)JsonConvert.DeserializeObject(text, typeof(T)); return obj; } }
如果向後臺傳入多個引數在data裡面用逗號分割可寫多個引數:
data: { corpName: corpName , corpName2: corpName2}
相關推薦
.net Ajax與後臺一般處理程式(ashx) 互動
本文主要實現無動態重新整理查詢後臺資料功能,主要用到ajax+ashx+sqlserver進行互動. 首先需要引用Jquery: <script language="javascript" type="text/javascript" src="../js/jquery.js"> h
ASP.Net原理篇 之 一般處理程式(ashx)
在學習asp.net期間 老師反覆告訴我們 千萬不要做只會 “拖控制元件的”ASP.Net程式設計師!!!何為 只會 “拖控制元件的”ASP.Net程式設計師? 當初微軟推出ASP.Net的時候 那個時候VB、delphi等“拖控制元件”式的語言相當的火爆 微軟為了把這些程式設計師全部拉攏過來使用ASP.Ne
.NET中一般處理程式(ashx)在Ajax中的使用--下拉列表的動態級連
NET框架中有一個檔案型別是一般處理檔案(.ashx)。可以在ajax開發中作為伺服器端使用。特別是當在請求停留在一個頁面的時候,下面舉個例子--實現html下拉列表的級連更新。 (1)ddlInnerJoin.aspx程式碼: <head runat="server"
.NET中一般處理程式(ashx)在Ajax中的使用
NET框架中有一個檔案型別是一般處理檔案(.ashx)。可以在ajax開發中作為伺服器端使用。特別是當在請求停留在一個頁面的時候,下面舉個例子--實現html下拉列表的級連更新。(1)ddlInnerJoin.aspx程式碼:<head runat="server"> <titl
ASP.NET -- 一般處理程式ashx
ASP.NET -- 一般處理程式ashx 如果在一個html頁面向伺服器端請求資料,可用ashx作為後臺頁面處理資料。ashx適合用作資料後臺處理,相當於WebForm中的aspx.cs檔案或aspx.vb檔案。 入門案例:html頁面向ashx頁面請求資料,ashx作為後臺頁
Js中$.ajax呼叫一般處理程式(.ashx)
$.ajax({ type: "post", url: "/tools/ActApply.ashx",
通過JS獲取前臺資料,並向後臺一般處理程式傳遞
function AddTeachCourse() { //取得教師ID var strTeacherID = $("#hidFieldSaveTeacherID").val(); //alert("教師ID="+txtTeacherID); //取得課程ID var s
一般處理程式ashx的post請求
ashx可直接獲取HttpContext物件,雖然很靈活,但也導致操作有些許複雜,Content-Type和Request Body與mvc、webapi的不同。js則需要這樣寫 function btnSumit_click() { var da
Jquery EasyUI +Ajax +Json +一般處理程式 實現資料的前臺與後臺的互動 --- 善良公社專案
經過上一篇部落格,本節主要是來看實現的功能是後臺的資料通過json資料傳過來,前臺修改的資料再傳回資料庫之後頁面再次更新table中的資料; 圖示: 例項:前臺的程式碼 <%--表格顯示區--%> <table id="tt" " ti
ASP.NET的ASHX一般處理程式中Session為null且不能賦值
首先我解釋一下 ashx檔案以前我們做ajax處理的時候要用常用的web介面處理。 現在不用了,微軟有ashx檔案,這個檔案就是後臺一些處理檔案,用extjs的同學可能會更清楚一點。 如果在這個檔案中用session,會提示失效的,網上找了很久終於找到解決辦法如下 如圖所
Javascript與ASP.NET(一般處理程式)關於URL(get方式)傳遞中文亂碼問題的解決方案
一、首先,說一下我要實現的功能 根據老師ID、學年、學期,查詢該教師教授的課程資訊。 二、傳遞引數我遇到的問題: 我通過傳遞教師ID、學年和學期從資料庫查詢出該教師所教的課程資訊,展現在介面上,從資料庫我能查詢出資料,為什麼在介面不出資料呢,我斷點除錯,發現這
ashx一般處理程式接收ajax傳回的json字串,並寫入到資料庫
首先將json物件轉為json字串 var aToStr = JSON.stringify(graphicStr); //json轉字串 然後ajax 通過post請求 $.ajax({ type: 'post',
ashx一般處理程式
http://192.168.2.112/AjaxQueryService.ashx/LOGINVALIDATE?username=1&passwordlogin=1 .NET裡面webform的字尾是aspx WCF和WebService的字尾是asmx 然後
使用ashx一般處理程式,讀取不到Session的問題
public class RandomCode : IHttpHandler, System.Web.SessionState.IRequiresSessionState //這裡就是實現的介面 { public v
JQuery與一般處理程式之間傳遞JSON資料
前端 HtmlPage1.html <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type"
asp.net一般處理程式對資料庫的操作
一、新建一個網站,在網站下面新增一個一般處理程式DemoHandler.ashx,程式碼如下: <%@ WebHandler Language="C#" Class="DemoHandler" %> using System; using System.Web; using System
關於C# 使用Xpath路徑(HtmlAgilityPack)對網頁內容查詢獲取的方法。(程式為.ashx的一般處理程式)
先貼程式碼: using System; using System.Web; using Newtonsoft.Json; using System.Net; using System.IO; using System.Text; using System.Text.Reg
.net一般處理程式獲取前臺頁面請求方法
前臺頁面多次請求一個後天頁面時要判斷不同請求的不同請求型別。後天頁面可以通過 context.Request.HttpMethod 來判斷前臺頁面發過來的請求型別,判斷是post請求方式之後再利用前臺
BS(三層)增刪改查——一般處理程式(ashx)版本
今天我們學習一下ASP.Net 的增刪改查,這個和以往的CS增刪改查最大的區別就是U層。以往我們學CS的時候都是用的winform窗體,我們可以直接在窗體中新增控制元件。然後針對控制元件的事件屬性進行一系列的操作。到了BS,U層變成了空白的瀏覽器介面,不能直接的拖拉控
C# 一般處理程式後臺傳來引數作為方法Act
private HttpRequest req; private HttpResponse res; private HttpContext ctx;