jquery ajax请求了两次问题
页面有一个请求form:
<form method="post" id="signin">
<label for="orderid">订单编号</label>
<input id="oid" name="orderid" value="" title="orderid" tabindex="4" type="text">
</p>
<p>
<label for="username">用户帐户</label>
<input id="username" name="username" value="" title="username" tabindex="5" type="text">
</p>
<p>
<label for="sendStatus">发货状态</label>
<select id="sendStatus">
<option value="-1">请选择</option>
<option value="0">未发送</option>
<option value="1">已发送</option>
</select>
</p>
<p>
<button type='submit' id='submit' onclick=showdatalist()>查询</button>
</p>
</form>
JavaScript请求部分:
function showdatalist()
{
var username = $("#username").val();
var orderid = $("#oid").val();
var sendStatus = $("#sendStatus").val();
var data = {"username" : username, "orderid" : orderid, "sendStatus" : sendStatus, "type" : "0"};
$.ajax({
url:"<%=path%>" + "/****",
type : "post",
data : data,
async : true,
success : function(obj)
{
console.dir(obj);
if (obj.success == true)
{
if (obj.obj == null || obj.obj.length < 1)
{
$("#content").html("");
}
else
{
$("#content").html("");
var content= obj.obj ;
var p = "";
var start = 0;
for (i = 0; i < content.length; i++)
{
//组装数据
}
}
}
}
});
}
控制台监测到两次请求:

原因:
发生两次提交的原因是在执行完ajax请求后,并没有阻止submit的行为,所以解决方法有两种:
1、不使用type为submit类型的按钮,而是使用type是button的按钮。
2、在showdatalist函数中,最后加一行return false;,即可阻止submit。
jquery ajax请求了两次问题的更多相关文章
- jquery ajax请求方式与提示用户正在处理请稍等,等待数据返回时loading的显示
1.jquery ajax请求方式与提示用户正在处理请稍等 为了提高用户体验度,我们通常会给出 “正在处理,请稍等!”诸如此类的提示.我们可通过设置$.ajax()下的参数beforeSend()来实 ...
- jQuery ajax 请求php遍历json数组到table中
html代码(test.html),js在html底部 <!DOCTYPE html> <html lang="en"> <head> < ...
- jquery Ajax请求示例,jquery Ajax基本请求方法示例
jquery Ajax请求示例,jquery Ajax基本请求方法示例 ================================ ©Copyright 蕃薯耀 2018年5月7日 https: ...
- jquery.ajax请求aspx和ashx的异同 Jquery Ajax调用aspx页面方法
1.jquery.ajax请求aspx 请求aspx的静态方法要注意一下问题: (1)aspx的后台方法必须静态,而且添加webmethod特性 (2)在ajax方法中contentType必须是“a ...
- 原生js,jquery ajax请求以及jsonp的调用
ajax 是用来处理前后端交互的技术,可以改善用户体验,其本质是 XMLHttpRequest,异步访问服务器并发送请求数据,服务器返回响应的数据,以页面无刷新的效果改变页面中的局部内容 ...
- jQuery ajax请求错误返回status 0和错误error的问题
上周发现一个jQuery ajax请求错误返回status 0和错误error的问题,responseText是"error",状态码是0而不是200: $.ajax({ type ...
- jquery Ajax请求中显示Loading...
jquery Ajax请求中显示Loading... $('#btnTest').click(function(){ $.ajax({ url ---- ,根据你需要设置 ...
- 二、jQuery Ajax请求
一.Ajax请求 1.jQuery Ajax请求 let ajaxTimeOut = $.ajax({ //将网络请求事件赋值给变量ajaxTimeOut url: "/api_v1.1/a ...
- jquery ajax 请求参数详细说明 及 实例
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
随机推荐
- 验证dictionary重复键
if (dict.ContainsKey("sadsa")) { }
- 无线网WEP的安全测试及防范
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/att ...
- (原创)jquery插件-可选可填控件
;(function ($) { $.fn.autoFillTextBox = function (options) { var defaults = { nShow: 5, //显示条数 nLen: ...
- 进入GRUB改root用户密码
开机读取倒计时时按任意键----e---->选择第二行 kernel ---->按e, 再按空格 >输入1----回车--->选择kernel输入b----> passw ...
- does not support ASP.NET compatibility 错误
The service cannot be activated because it does not support ASP.NET compatibility. ASP.NET compatibi ...
- HDU3535AreYouBusy(分组背包)
http://acm.hdu.edu.cn/showproblem.php?pid=3535 分组背包,每一组加了以下三个限制 0 stands for the sets that should ch ...
- Delphi中GUID相等检查中经典指针应用
type PGUID = ^TGUID; TGUID = packed record D1: LongWord; D2: Word; D3: Word; D4: array[0..7] of Byte ...
- static和extern的区别
extern(外部) 1.对函数 完整的定义一个外部函数(可以省略extern) 完整的声明一个外部函数(可以省略extern) 2.对变量 只能声明一个外部变量(不能省 ...
- C# DataTable.Select() 筛选数据
有时候我们需要对数据表进行筛选,微软为我们封装了一个公共方法, DataTable.Select(),其用法如下: Select() Select(string filterExpression) S ...
- 重载PostNcDestroy()函数做一些清理工作
转自:http://zhidao.baidu.com/link?url=W-OOWnvUx58w1esKfRAMtvbzBhjfyKodhk8j2DcTtlcDKAOy8sBNW-8Ey2RAhc0l ...