300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > ajax ashx 请选择文件 jquery ajax post 方式ashx文件取不到值。

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

时间:2021-01-09 22:32:49

相关推荐

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

我的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如下

$(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 {

}

});

});

ashx文件如下:

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-11131211;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上也有类似的情况,好像也没解决。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。