ajax 发送数据到 ashx 只执行一次的问题!

问题描述

代码只能执行了一次,第二次点击的时候,就没有返回的数据了,求解!刚开始用ajax请各位大神多指点!谢谢了!$("#DataKeep").click(function(){varRowAllData=All_Expense();//返回数据$.ajax({url:'Data_Keep.ashx',//ajax提交路径type:'post',//提交方式data:{Application_Type:$("#Application_Type").val(),Distributor_Name:$("#Distributor_Name").text(),LeiXin:$("#LeiXin").text(),BianMa:$("#BianMa").text(),DangAnHao:$("#DangAnHao").text(),RenYuanDangAnHao:$("#RenYuanDangAnHao").val(),ShenQingRen:$("#ShenQingRen").text(),ShenQingRiQi:$("#ShenQingRiQi").text(),LiuShuiHao:$("#LiuShuiHao").text(),BanShiChu:$("#BanShiChu").text(),ShenQingBianHao:$("#ShenQingBianHao").text(),ZhiXing:$("#ZhiXing").val(),DiDian:$("#DiDian").val(),Application_Explain:$("#Application_Explain").val(),AllData:RowAllData,},//提交参数success:function(result){//ajax请求完成时执行,result为返回的结果alert(result);},error:function(){alert("ajax请求处理错误");}});})

publicclassData_Keep:IHttpHandler{privatestringmyConnectionString=ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString;publicvoidProcessRequest(HttpContextcontext){//接收页面传参//intid=0;//int.TryParse(context.Request.Form["id"],outid);stringApplication_Type=context.Request.Form["Application_Type"];//申请单类型stringDistributor_Name=context.Request.Form["Distributor_Name"];//经销商名称stringLeiXin=context.Request.Form["LeiXin"];//经销商类型<scriptsrc="File_Style/JavaScript_Css/Home.js"></script>stringBianMa=context.Request.Form["BianMa"];//经销商编码stringDangAnHao=context.Request.Form["DangAnHao"];//经销商档案号stringRenYuanDangAnHao=context.Request.Form["RenYuanDangAnHao"];//申请人档案号(隐藏)stringShenQingRen=context.Request.Form["ShenQingRen"];//申请人stringShenQingRiQi=context.Request.Form["ShenQingRiQi"];//申请日期stringLiuShuiHao=context.Request.Form["LiuShuiHao"];//申请单流水号stringBanShiChu=context.Request.Form["BanShiChu"];//办事处stringShenQingBianHao=context.Request.Form["ShenQingBianHao"];//申请单编号stringZhiXing=context.Request.Form["ZhiXing"];//执行单位stringDiDian=context.Request.Form["DiDian"];//地点或渠道stringApplication_Explain=context.Request.Form["Application_Explain"];//促销申请说明stringAllData=context.Request.Form["AllData"];//全部门店明细//这里进行数据处理或对数据库的操作//SqlConnectionmyConnection=newSqlConnection(myConnectionString);myConnection.Open();//存入主表数据S_Promotion_AMstringcmdText="insertintoS_Promotion_AM(Promotion_MNum,P_WH_BSC,P_WH_Fnum,P_WH_Name,KH_Name,KH_Num,KH_Fnum,Promotion_MType,Promotion_Mcode,Promotion_Coutent,Promotion_Date,Promotion_Implement,Promotion_Place)values('"+LiuShuiHao+"','"+BanShiChu+"','"+RenYuanDangAnHao+"','"+ShenQingRen+"','"+Distributor_Name+"','"+BianMa+"','"+DangAnHao+"','"+Application_Type+"','"+ShenQingBianHao+"','"+Application_Explain+"','"+ShenQingRiQi+"','"+ZhiXing+"','"+DiDian+"')";SqlCommandmyCommand1=newSqlCommand(cmdText,myConnection);myCommand1.ExecuteNonQuery();myConnection.Close();////context.Response.ContentType="text/plain";//返回数据类型context.Response.Write(AllData);//返回数据}publicboolIsReusable{get{returnfalse;}}}

解决方案

解决方案二:
用fiddler调试下,看看客户端js提交的是什么
解决方案三:
在后台代码中做个标记,判断是否第一次请求就可以了!
解决方案四:
chome按f12,查看返回数据后,第二次再次点击的时候,js是否报错。断点调试你的ashx文件,第二次是否后台代码报错
解决方案五:
$.ajax({url:"UserAtlas.ashx",type:"get",cache:false,async:false,data:{random:Math.random()},dataType:"json",success:function(data){if(data!=null){$(data.result).each(function(i,n){});}}});

解决方案六:
你应该根据调试而逐步深入。例如通过http调试器看到第二次有上行数据,但是下行是5xx状态,那么你就可以调试asp.net程序,看看程序异常。另外,你应该在vs上开发,不要在其它不靠谱的开发工具上开发,更不要用什么notepad.exe来写代码然后直接放到网站上。如果你在vs上开发,你的调试器就会停留再抛出异常的语句上,例如停在myCommand1.ExecuteNonQuery()上,并且有错误提示、详细信息窗口、堆栈调用窗口、变量监视窗口、调试命令行窗口,等等各种调试工具。不调试,永远不能成为一个专业程序员。
解决方案七:
打开Fibug,查看每次点击时候的请求信息
解决方案八:
ajax缓存问题,在提交请求的地址上加个随机数,如url:"UserAtlas.ashx?rnd="+newDate()

时间: 2024-08-02 04:56:29

ajax 发送数据到 ashx 只执行一次的问题!的相关文章

ajax 发送数据并显示返回数据

<script language="javascript"> function getInfo(url) {  if (window.XMLHttpRequest)  {   req=new XMLHttpRequest();  }  else if (window.ActiveXObject)  {   req=new ActiveXObject("Microsoft.XMLHTTP");  }  if(req)  {   req.open("

AJAX使用post发送数据xml格式接受数据_实用技巧

注意点:  1. 用POST发送数据,在2号线函数(也是ajax发送数据的函数:ajaxCall)必须加上一句:xmlObject.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 接着使用xmlObject.send(data);发送 2.3号线函数要注意:   1.禁用缓存(建议,不必要):header("Cache-Control:no-cache")

发送数据-怎么用ajax把勾选的数据发送到手机,现在的情况是勾选没有效果,点击发送就发送所有数据了

问题描述 怎么用ajax把勾选的数据发送到手机,现在的情况是勾选没有效果,点击发送就发送所有数据了 html代码: js代码: function sendSms(order_sn) { Ajax.call('order.php?is_ajax=1&act=sendSms', 'order_sn=' + order_sn, sendSms_response, "GET", "JSON"); } function sendSms_response(res) {

Ajax 高级功能之ajax向服务器发送数据_AJAX相关

1. 准备向服务器发送数据 Ajax 最常见的一大用途是向服务器发送数据.最典型的情况是从 客户端发送表单数据,即用户在form元素所含的各个 input 元素里输入的值.下面代码展示了一张简单的表单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>基本表单</title> <style>

Ajax 高级功能之ajax向服务器发送数据

1. 准备向服务器发送数据 Ajax 最常见的一大用途是向服务器发送数据.最典型的情况是从 客户端发送表单数据,即用户在form元素所含的各个 input 元素里输入的值.下面代码展示了一张简单的表单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>基本表单</title> <style>

图片-ajax发送的数据,后台如何接收并且解析?

问题描述 ajax发送的数据,后台如何接收并且解析? 按照我这么写的话不对,打印出来的也没有地址,只是一个null 如何解析,希望大神们帮帮忙. 解决方案 ajax向后台发送数组数据ajax 获取后台数据显示listajax发送json,后台取得数据 解决方案二: 怎么没看见你的ajax:用data:{"realData":data};后台也要有值去接收,变量名为realData;如果不懂ajax可以参考:http://blog.csdn.net/qq_19558705/article

点击发布按钮,如何用ajax发送这些数据到后台,希望有源码

问题描述 点击发布按钮,如何用ajax发送这些数据到后台,希望有源码 mg.ask.csdn.net/upload/201512/10/1449737844_583917.png) 如何点击发布使用ajax发送到后台这么多数据,我只能发送一行的数据,所有行的要怎么发,后台要如何接收 //第一行数据 var _tr = $("tbody tr:eq(0)"); var sortNum = _tr.children().eq(0).text(); var photoId = _tr.chi

firefox-火狐浏览器同时提交两个ajax请求,只执行了一个??

问题描述 火狐浏览器同时提交两个ajax请求,只执行了一个?? 文档框有一个change监听事件,当输入完毕,点击提交时,只是执行了change事件,而没有执行提交操作.在点击一次提交,才可以完成提交.再谷歌浏览器,一次点击就可以提交完成.请大神告诉我为什么?

ajax推技术,在线服务器端向客户端发送数据

问题描述 ajax推技术,在线服务器端向客户端发送数据 ajax推技术,用浏览器访问该网页后,为什么我的代码每次用insert 向数据库插入数据后,当第三次插入数据的时候才会有效果,将$mes显示在浏览器上? 代码如下: <?PHP header("content-type:text/html;charset=utf-8"); set_time_limit(0);//设置服务器脚本的最大执行时间. $conn=mysql_connect('localhost','root','1