如果遇到每次触发click, change等事件时ajax请求都会增加一个,这种情况很有可能是每次触发事件都会多绑定一个事件,解决办法就是在每次绑定事件之前要解除绑定.…
今天在做项目中遇到一个问题,大概是在一个jsp页面同时有一个select下拉搜索条件框和一个Bootstrap表格展示列表.这两个都要通过ajax向后台拿数据,而且要在页面加载时完成.当时的做法是: $(function() { // 加载下拉菜单 selectMenu(); /** 加载页面表格 */ var url = 'xxxx.do'; var col = [ { checkbox : true }, { field : 'operlogid', title : 'xxx', forma…
今天遇到这样一个问题: 页面在chrome下发送ajax的请求是没有问题的,但是在firfox下无效. 代码大致如下: //前面省略 <form> ..... <button class="btn btn-primary" onclick="generateScore(this);"><i class="fa fa-random"></i> 生成成绩</button> <butto…
问题: 使用jQuery POST提交数据到PHP文件, PHP返回的json_encode后的数组数据,但jQuery接收到的数据不能解析为JSON对象,而是字符串{"code":-1,"msg":"123","data":[]} jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据. jQuery $.get() 方法 $.get() 方法通过 HTTP GET 请…
已存在一个应用A,采用的是http交互, 在接入天猫精灵时,要求请求类型是https,所以在应用服务前加了个nginx转发https请求.在绑定授权页面,会发送ajax请求验证用户名和密码,采用http发送ajax请求, 一直不能进入java后台方法.百度后发现https页面是不能发送http的ajax请求的.后来尝试采用jsonp发送请求,同样进不了java后台,猜测是jsonp只能支持get形式,我传入的参数或者 格式有误导致的.再后来直接发送https类型的ajax请求,由nginx转发请…
一.普通请求方法发送 PUT 请求 1. 如果不用 ajax 发送 PUT,我们可以通过设置一个隐藏域设置 _method 的值,如下: <form action="/emps" method="post"> <input type="hidden" name="_method" value="PUT"> <input type="text" name=&q…
在项目了开发时遇见一个奇怪的现象,就是我在js里面发送一次ajax请求,在浏览器network那边查询到的却是发送了两次请求,第一次的Request Method参数为OPTIONS,第二次的Request Method为我正常设定的POST. 在参考了:https://blog.csdn.net/cc1314_/article/details/78272329  这边博客以后终于找到了原因. 浏览器对复杂跨域请求的处理,在发送真正的请求前, 会先发送一个方法为OPTIONS的预请求(prefl…
JQuery库的Ajax请求的几种方法: 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. 参数含义: url (String) : 请求的HTML页的URL地址. data (Map) : (可选参数) 发送至服务器的 key/value 数据. callback (Callback) : (可选参数) 请求完成时(不需要是success的)的回调函数. 这个方法默认使用 GET 方式来传递的,如果[data]参数有传递…
.ajax原理: Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面.这其中最关键的一步就是从服务器获得请求数据.要清楚这个过程和原理,我们必须对 XMLHttpRequest有所了解. XMLHttpRequest是ajax的核心机制,它是在IE5中首先引入的,是一种支持异步请求的技术.简单的说,也就是javascript可以及时向服务器提出请求和处理响应,而不阻塞用户.达到无刷新的效果.    所…
首先提出一个问题:点击页面上一个按钮发送两个ajax请求,其中一个请求会不会等待另一个请求执行完毕之后再执行? 答案是:不会,这两个异步请求会同时发送,至于执行的快与慢,要看响应的数据量的大小及后台逻辑的复杂程度. 从异步请求的执行原理来看,我们知道当一个异步请求发送时,浏览器不会处于锁死.等待的状态,从一个异步请求发送到获取响应结果的期间,浏览器还可以进行其它的操作.这就意味着多个异步请求的执行时并行的. 下面我们还是从一个例子来看一下这个问题. 要求:ajax1从后台请求下拉列表的数据,aj…
在使用jquery的方式为元素绑定事件时,我经常使用bind或者click,但这只能为页面已经加载好的元素绑定事件.像需要用ajax的方式请求远程数据来动态添加页面元素时,显然以上几种绑定事件的方式是无效的,具体写法如下图. $(selector).bind(event,data,function) $(selector).click(function) $("#searchMoveVideoResult ul li").bind("click",function(…
1.   JSP页面中准备模态框 <!-- 详细信息模态框(Modal) --> <div> <div class="modal fade" id="queryInfo" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div clas…
给元素绑定click事件后 ,遇到一个问题:当执行一些ajax请求,再次调用此页面,里面的这个click事件就失效了 比如说:我的分页是一个ajax请求 但我点下一页时 后生成的元素a就没有了click事件了 自己做项目时遇到的问题: 目的:批量删除复选框,当点击删除的时候触发利用jquery绑定在按钮上的onclick事件从而获取所有复选框的值, 1.第一次直接smarty注入调取页面时没问题,当根据条件查询(Ajax实现),再次调用页面列出记录时,单击事件失效 原因:ajax加载内容是在$(…
jquery事件绑定有2种方式: 1,普通事件绑定: $('元素').click(function(){}); 2, 事件代理或者叫事件委托 $('#chatPanelList').on('click','.leftMsg .msgDiv .msgText .stionsList li .answerBtn',function(e) {}); 结: 如果动态生成的则无法绑定事件.你可以用事件委托来处理. 产考链接: https://blog.csdn.net/linsygod/article/d…
本节主要内容预览: 1 获得Ajax对象 2 使用Ajax对象发送GET请求 3 使用Ajax对象发送POST请求 4 使用Ajax校验用户名 5 POST请求时的乱码处理 6 GET请求时的乱码处理 7 使用Ajax实现级联的下拉列表 本文作者:souvc 本文出处:http://www.cnblogs.com/liuhongfeng/p/4574599.html 本文详细内容如下: 1 获得Ajax对象 1.1 问题 如何获得XmlHttpRequest对象. 1.2 方案 区分浏览器,使用…
IE6下真是处处是坑啊!!!走过了一个又一个坑,记录一下吧. 之前不知道a标签上注册click事件之后,发送ajax请求总是error.后来经过几番网上搜索,终于找到高人遇到此坑的解决办法.原来是a标签上发送ajax请求就是error. 解决办法有3个,我喜欢用最后一个:   1.最简单的,换个标签吧,别用A了. 2.使用 <a href=”javascript:aa();”> 这种写法调用javascript方法. 3.在绑定事件里阻止A标签触发默认事件,jQuery就提供了个很简单的调用 …
//事件触发顺序ajaxStart,ajaxSend,ajaxSuccess或ajaxError,ajaxComplete,ajaxStop $(document).ajaxStart(function (event) { /* * 每一个ajax即将发送的时候触发该事件,只有一个事件对象参数 */ console.log('ajaxStart'); }) $(document).ajaxSend(function (event,xhr,opts,err) { /* * 每一个ajax即将发送的…
偶然碰到一个小Bug ajax请求执行后返回了一个canceled(状态码) 但是后台却接受了参数并且执行成功0.0 刚看到这个状态的时候是一脸懵逼的.... 之前并没见过这样的状态码 经过参数确认并且再三确认 并没有发现什么异常.... 后来发现Url在请求的时候被莫名其妙的带上了些参数 经过检查html代码发现莫名其妙的出现了一个from标签 而我的提交按钮绝然还是个submit!! 没错,我在给人家擦屁股 原因 究其原因 仅仅是因为from action事件与绑定与submit按钮上的cl…
一.JS原生Ajax Ajax=异步Javascript+XML: ajax是一种数据请求的方式,不需要刷新整个页面.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. ajax的核心技术当然是XMLHttpRequest对象: ajax请求过程:创建XMLHttpRequest对象.连接服务器.发送请求.接受相响应数据. 废话少说上代码!   <script type="text/javascript"> //调用ajax函数 ajax({ url:'./…
说明 发送Ajax的请求的核心对象是XMLHttpRequest,因此我们需要了解该对象的相关属性和方法 方法(图一) 属性(图二) 第一步:创建 XMLHttpRequest对象,下面都简写为 xhr对象 由于XMLHttpRequest不兼容IE6及以下的浏览器,因此在IE6及以下的浏览器不能使用XMLHttpRequest创建 xhr对象,使用ActiveXObject('Microsoft.XMLHTTP')代替.但是我写好之后测试了一波,IE5好像支持 XMLHttpRequest对象…
一.Ajax基本概念 [参考]:https://www.runoob.com/jquery/jquery-ajax-intro.html 异步的javascript.在不全部加载某一个页面部的情况下,对页面进行局的刷新,ajax请求都在后台. 图片,css文件,js文件都是静态文件. 1.1ajax基本用法 $.ajax({ 'url':请求地址, 'type':请求方式, 'dataType':预期返回的数据格式 'data':参数 }).success(function(data){ //回…
<?php //$a = "{'id':'1'}"; //$b = '{"id":1}'; //$a = iconv('ASCII',"UTF-8",$a); //var_dump(json_decode($a)); //var_dump(json_last_error()); //var_dump(json_last_error_msg()); //var_dump(mb_detect_encoding($a, array("A…
堕落了一阵子了,今天打开博客,发现连登录的用户名和密码都不记得了.2016年已过半,不能再这么晃荡下去了. 参加了网易微专业-前端攻城狮 培训,目前进行到大作业开发阶段,感觉举步维艰.但是无论如何,不管结果怎样,一定要完成这次任务——毕竟是花了银子的,不能浪费.所以准备写一个系列博客,把开发过程中遇到的各种小问题记录下来,也算是从头到尾做一个开发备案吧.通读了开发要求,大致做了一下分解,打算拆分成一个个的小模块,逐个击破.今天是准备阶段,想先试着调一下接口,看看能否调的通. 言归正传.从页面向服…
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:长天之云链接:http://www.zhihu.com/question/19805411/answer/15465427来源:知乎 不推荐用外部变量锁定或修改按钮状态的方式,因为那样比较难: 要考虑并理解 success, complete, error, timeout 这些事件的区别,并注册正确的事件,一旦失误,功能将不再可用: 不可避免地比普通流程要要多注册一个 complete 事件: 恢复状态的代码很容易和不相…
最近,项目中需要按照先后顺序发送ajax请求,并且在一次请求结束后才能发起下一次,不然就会导致逻辑错误. 解决办法是定义一个数组,保存ajax请求数据. 以下使用extjs4定义一个类 Ext.define('tazi.Test', { answerList:[], //保存应答数据 saveAnswer:function(answer){ //需要把应答数据保存到数据库中的第一层方法 this.answerList.push(answer); if(!this.answerInterval){…
客户端为了实现token认证,通过Jquery的ajaxSetup方法全局配置headers: 全局配置headers后会导致部分不需要token认证的请求变为options请求,导致跨域访问.报错信息如下: CORS概念 支持CORS请求的浏览器一旦发现ajax请求跨域,会对请求做一些特殊处理,对于已经实现CORS接口的服务端,接受请求,并做出回应. 有一种情况比较特殊,如果我们发送的跨域请求为“非简单请求”,浏览器会在发出此请求之前首先发送一个请求类型为OPTIONS的“预检请求”,验证请求…
1.ajax五步曲 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <h1>ajax 发送post</h1> <input type="text" value=&quo…
在IE浏览器中通过Ajax请求后台的数据,如果Page请求是postback类型的,可能会导致Ajax请求失败的问题 我们都知道ajax能提高页面载入的速度主要的原因是通过ajax减少了重复数据的载入,也就是说在载入数据的同时将数据缓存到内存中,一旦数据被加载其中,只要我们没有刷新页面,这些数据就会一直被缓存在内存中,当我们提交 的URL与历史的URL一致时,就不需要提交给服务器,也就是不需要从服务器上面去获取数据,虽然这样降低了服务器的负载提高了用户的体验,但是我们不能获取最新的数据,特别是那…
最近做vue项目时遇到登录权限问题,登录以后再发送的请求头部并没有携带登录后设置的cookie,导致后台无法校验其是否登录.检查发现是vue项目中使用axios发送ajax请求导致的.查看文档得知axios默认是不让ajax请求头部携带cookie的,因此,在main.js中设置如下: import axios from 'axios' axios.defaults.withCredentials=true;//让ajax携带cookie Vue.prototype.$axios = axios…
在工作中有很多场景需要通过Ajax请求发送数据,像是注册.登录.提交用户反馈等.用户在点击了“确认”按钮之后有可能一段时间内没有收到反馈页面无任何反应,然后就接着连续多次点击“确认”按钮导致发送n个重复的请求,给服务器造成不小压力. 从前端解决重复发送请求的方法是有的. 1.点击“确定”之后禁用该按钮 <input type="button" id="submit-btn"> <script> var btn=$("#submit-…