亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jquery ajax post 方式ashx文件取不到值。

jquery ajax post 方式ashx文件取不到值。

慕田峪9158850 2018-12-07 01:42:27
我的Common.js如下 //處理一般AJAX功能。function InvokeHander(url,type,data, onSuccess, onFailure) { ??? $.ajax({??????? url: url, //路徑??????? type: type, //請求方式??????? data: data, //請求的數據??????? dataType: "json",??????? contentType: "application/json;charset=utf-8",??????? beforeSend: function(x) {??????????? x.setRequestHeader("Content-Type", "application/json;");??????? },??????? success: function(result) {??????????? if (onSuccess) {??????????????? if (result.d != undefined)??????????????????? result = result.d;??????????????? onSuccess(result);??????????? } ??????? },??????? error: function(err) {??????????? if (onFailure) {??????????????? onFailure(err);??????????? }??????? } ??? }) } aspx頁面js如下 ?<script type="text/javascript" src="javascript/jquery-1.3.2.min.js"></script>??? <script type="text/javascript" src="javascript/Common.js"></script>??? <script type="text/javascript">??????? $(function() {??????????? $("#d1").change(function() { ??????????????? var did = $("#d1").find("option:selected").val();??????????????? if (did != "請選擇") {??????????????????? InvokeHander("TypeHandler.ashx","POST","{id:'"+did+"'}" ,??????????????????? function(result) {??????????????????????? if (result != null) {??????????????????????????? for (i = 0; i < result.length; i++) {??????????????????????????????? var item = result[i];??????????????????????????????? alert(item.TypeName); ??????????????????????????? } ??????????????????????? }??????????????????? },???????????? function(err) { ???????????????? alert('err');???????????? });??????????????? }??????????????? else { ??????????????? }??????????? }); ??????? });??? ??? </script> ? ashx文件如下: <%@ WebHandler Language="C#" class="TypeHandler" %> using System;using System.Web;using System.Data;using System.Data.SqlClient;using System.Collections;using System.Web.Script.Serialization;public class TypeHandler : IHttpHandler { ??? public void ProcessRequest(HttpContext context)??? { ??????? if (context.Request["id"] == null)//這里永久為null用Request.form["id"]也不行??????? {?????????? ??????? }??????? else??????? {??????????? context.Response.Write(GetType(decimal.Parse(context.Request["id"].ToString())));??????? }??????? ??? } ??? public bool IsReusable??? {??????? get??????? {??????????? return false;??????? } ??? } ??? public string GetType(decimal id)??? {??????? ArrayList arr = new ArrayList();??????? SqlConnection conn = new SqlConnection("server=PC-200911131211;database=petsdata;uid=sa;pwd=sa123456");??????? SqlDataAdapter da = new SqlDataAdapter("select * from infor_type2 where infor_type2_father='" + id + "'", conn);??????? DataSet ds = new DataSet();??????? da.Fill(ds);??????? for (int i = 0; i < ds.Tables[0].Rows.Count; i++)??????? {??????????? arr.Add(new {??????????????? TypeID = ds.Tables[0].Rows[i]["infor_type2_id"].ToString(),??????????????? TypeName=ds.Tables[0].Rows[i]["infor_type2_name"].ToString()??????????? ??????????? });??????? ??????? } ??????? JavaScriptSerializer serializer = new JavaScriptSerializer();??????? string result = serializer.Serialize(arr);??????? return result;????? ??? } ??? }??? 假如我把上面請求方法換成POST傳進去的data換成: "id="+did?,ashx用request.QueryString["id"]就一點問題都沒。 請博客園的高手幫幫我吧。。。。我看見CSDN上也有類似的情況,好像也沒解決。 地址:http://topic.csdn.net/u/20091126/17/a015820e-d41f-4689-b6fe-232a098c2699.html
查看完整描述

11 回答

?
當年話下

TA貢獻1890條經驗 獲得超9個贊

context.Request[] 是不能用json的,data數據格式改成:id=121&name=sss 等等這種格式啊應該就行了,不行的話contentType 也修改一下

context.Request.GetResponseStream() 好像是這個方法吧,他可以獲取post的流,json也就可以得到?。海?br/>

查看完整回答
反對 回復 2019-01-21
?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

InvokeHander("TypeHandler.ashx","POST","id="+did+"" ,

查看完整回答
反對 回復 2019-01-21
?
UYOU

TA貢獻1878條經驗 獲得超4個贊

data: eval('"("+data+")"'), //請求的數據

查看完整回答
反對 回復 2019-01-21
?
12345678_0001

TA貢獻1802條經驗 獲得超5個贊

在js頂部寫 $.ajaxSetup({cache:false}); 關閉客戶端緩存即可

查看完整回答
反對 回復 2019-01-21
?
函數式編程

TA貢獻1807條經驗 獲得超9個贊

試過不行
查看完整回答
反對 回復 2019-01-21
?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

是不是,不支持json的格式啊,你的.net是什么版本

查看完整回答
反對 回復 2019-01-21
?
嚕嚕噠

TA貢獻1784條經驗 獲得超7個贊

這個問題不是沒解決嗎?為什么就結貼說已解決了。

查看完整回答
反對 回復 2019-01-21
?
慕尼黑8549860

TA貢獻1818條經驗 獲得超11個贊

解決沒有啊 ? 我發現換個瀏覽器就可以,而且,昨天可以,今天再試不可以。

查看完整回答
反對 回復 2019-01-21
?
九州編程

TA貢獻1785條經驗 獲得超4個贊

你把contentType: "application/json;charset=utf-8",這個參數去掉就既可以支持POST也可以支持GET了。

查看完整回答
反對 回復 2019-01-21
?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

同樣問題,這個試過可以了,謝謝

查看完整回答
反對 回復 2019-01-21
?
繁花如伊

TA貢獻2012條經驗 獲得超12個贊

把contentType: "application/json;charset=utf-8",這個參數去掉就既可以支持POST也可以支持GET了。

查看完整回答
反對 回復 2019-01-21
  • 11 回答
  • 0 關注
  • 737 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號