完整的Ajax实例

合集下载

PHP+AJAX教程(5)-AJAX MySQL数据库实例

PHP+AJAX教程(5)-AJAX MySQL数据库实例

PHP+AJAX教程(5):AJAX MySQL数据库实例AJAX 可用来与数据库进行交互式通信。

AJAX 数据库实例在下面的AJAX 实例中,我们将演示网页如何使用AJAX 技术从MySQL 数据库中读取信息。

在下拉列表中选择一个名字(测试说明:该实例功能未实现)在此列出用户信息。

此列由四个元素组成:MySQL 数据库简单的HTML 表单JavaScriptPHP 页面数据库将在本例中使用的数据库看起来类似这样:idFirstNameLastNameAgeHometownJob1PeterGriffin41QuahogBrewery2LoisGriffin40NewportPiano Teacher3JosephSwanson39QuahogPolice Officer4GlennQuagmire41QuahogPilotHTML 表单上面的例子包含了一个简单的HTML 表单,以及指向JavaScript 的链接:<html><head><script src="selectuser.js"></script></head><body><form> Select a User:<select name="users" onchange="showUser(this.value)"><option value="1">Peter Griffin</option><option value="2">Lois Griffin</option><option value="3">Glenn Quagmire</option><option value="4">JosephSwanson</option></select></form><p><divid="txtHint"><b>User info will be listed here.</b></div></p></body></html>例子解释- HTML 表单正如您看到的,它仅仅是一个简单的HTML 表单,其中带有名为"users" 的下拉列表,okooo澳客网这个列表包含了姓名,以及与数据库的"id" 对应的选项值。

AJAX案例

AJAX案例

div 部分用于显示来自服务器的信息。

当按钮被点击时,它负责调用名为loadXMLDoc() 的函数:<html><body><div id="myDiv"><h3>Let AJAX change this text</h3></div><button type="button" onclick="loadXMLDoc()">Change Content</button></body></html>接下来,在页面的 head 部分添加一个 <script> 标签。

该标签中包含了这个loadXMLDoc() 函数:<head><script type="text/javascript">function loadXMLDoc(){.... AJAX script goes here ...}</script></head>AJAX - 创建 XMLHttpRequest 对象∙Previous Page∙Next PageXMLHttpRequest 是 AJAX 的基础。

XMLHttpRequest 对象所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用ActiveXObject)。

XMLHttpRequest 用于在后台与服务器交换数据。

这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

创建 XMLHttpRequest 对象所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建XMLHttpRequest 对象。

创建 XMLHttpRequest 对象的语法:variable=new XMLHttpRequest();老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:variable=new ActiveXObject("Microsoft.XMLHTTP");为了应对所有的现代浏览器,包括 IE5 和 IE6,请检查浏览器是否支持XMLHttpRequest 对象。

妙用Ajax技术实现局部刷新商品数量和总价实例代码

妙用Ajax技术实现局部刷新商品数量和总价实例代码

妙⽤Ajax技术实现局部刷新商品数量和总价实例代码1. 问题的分析 先看⼀下页⾯中的情况: 功能如上,在没有Ajax之前,⼀般都是根据⽤户修改的值去找Action,然后返回新的jsp页⾯重新加载整个页⾯,完成数字的更新。

但是有了Ajax技术后,我们可以利⽤Ajax技术局部刷新要改变的地⽅,⽽不是重新加载整个页⾯。

⾸先看⼀下上图对应的jsp部分的代码:<div class="section_container"><!-- 购物车 --><div id="shopping_cart"><div class="message success">我的购物车</div><table class="data-table cart-table" cellpadding="0" cellspacing="0"><tr><th class="align_center" width="10%">商品编号</th><th class="align_left" width="35%" colspan="2">商品名称</th><th class="align_center" width="10%">销售价格</th><th class="align_center" width="20%">数量</th><th class="align_center" width="15%">⼩计</th><th class="align_center" width="10%">删除</th></tr><c:forEach items="${sessionScope.forder.sorders }" var="sorder" varStatus="num"><tr lang="${sorder.product.id}"><td class="align_center"><a href="#" class="edit">${num.count }</a></td><td width="80px"><img src="${shop}/files/${sorder.product.pic}" width="80" height="80" /></td><td class="align_left"><a class="pr_name" href="#">${ }</a></td><td class="align_center vline">${sorder.price }</td><td class="align_center vline"><!-- ⽂本框 --><input class="text" style="height: 20px;" value="${sorder.number }" lang="${sorder.number }"></td><td class="align_center vline">${sorder.price*sorder.number }</td><td class="align_center vline"><a href="#" class="remove"></a></td></tr></c:forEach></table><!-- 结算 --><div class="totals"><table id="totals-table"><tbody><tr><td width="60%" colspan="1" class="align_left"><strong>⼩计</strong></td><td class="align_right" style=""><strong>¥<spanclass="price" id="total">${sessionScope.forder.total}</span></strong></td></tr><tr><td width="60%" colspan="1" class="align_left">运费</td><td class="align_right" style="">¥<span class="price" id="yunfei">0.00</span></td></tr><tr><td width="60%" colspan="1" class="align_left total"><strong>总计</strong></td><td class="align_right" style="">¥<span class="total" id="totalAll"><strong>${sessionScope.forder.total}</strong></span></td></tr></tbody></table><div class="action_buttonbar"><font><a href="${shop}/user/confirm.jsp"><button type="button" title="" class="checkout fr" style="background-color: #f38256;">订单确认</button></a></font><font><a href="#"><button type="button" title="" class=" fr"><font>清空购物车</font></button></font><a href="${shop}/index.jsp"><button type="button" title="" class="continue fr"><font>继续购物</font></button></a><div style="clear:both"></div></div></div></div> 看着貌似很多的样⼦,其实功能很简单,就是从域中拿出相应的数据显⽰出来⽽已,我们现在要实现上⾯描述的功能的话,先来分析⼀下思路:⾸先得注册⼀个事件:即修改了数量那⾥的⽂本框触发的事件;在该事件中,我们拿到⽤户输⼊的数,判断输⼊的合法性,因为要防⽌⽤户乱输⼊;如果合法,通过Ajax请求将数据发送到后台;后台针对新的数量,调⽤相应的业务逻辑⽅法得到新的结果,并将其通过流返回到前台;Ajax收到结果后,再对相应位置的数据进⾏更新。

jQuery ajax - ajax() 使用方法和示例

jQuery ajax - ajax() 使用方法和示例

实例通过 AJAX 加载一段文本: jQuery 代码: $(document).ready(function(){ $("#b01").click(function(){ htmlobj=$.ajax({url:"",async:false}); $("#myDiv").html(htmlobj.responseText); }); });HTML 代码: <div id="myDiv"><h2>321 导航</h2></div> <button id="b01" type="button"></button>亲自试一试定义和用法ajax() 方法通过 HTTP 请求加载远程数据。

该方法是 jQuery 底层 AJAX 实现。

简单易用的高层实现见 $.get, $.post 等。

$.ajax() 返回其创建 的 XMLHttpRequest 对象。

大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获 得更多的灵活性。

最简单的情况下,$.ajax() 可以不带任何参数直接使用。

注意:所有的选项都可以通过 $.ajaxSetup() 函数来全局设置。

语法jQuery.ajax([settings])参数 settings描述 可选。

用于配置 Ajax 请求的键值对集合。

可以通过 $.ajaxSetup() 设置任何选项的默认值。

参数 options 类型:Object可选。

AJAX 请求设置。

所有选项都是可选的。

async 类型:Boolean 默认值: true。

默认设置下,所有请求均为异步请求。

如果需要发送同步请求,请将此选项设 置为 false。

注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

jq ajax 写法

jq ajax 写法

jq ajax 写法在使用jQuery 的Ajax 功能发送异步请求时,可以使用$.ajax() 方法。

以下是一个常见的jQuery Ajax 的写法示例:javascriptCopy Code$.ajax({url: 'your-url', // 请求的URLmethod: 'POST', // 请求方法,可以是GET、POST等data: { key1: 'value1', key2: 'value2' }, // 请求参数dataType: 'json', // 服务器返回的数据类型,这里设置为JSONsuccess: function(response) {// 请求成功时的回调函数console.log(response); // 输出服务器返回的数据},error: function(xhr, status, error) {// 请求失败时的回调函数console.log(error); // 输出错误信息}});在上述代码中,使用$.ajax() 方法发送一个POST 请求到指定的URL,并传递一些参数。

url 属性指定请求的URL,method 属性指定请求的方法(如GET 或POST),data 属性指定请求的参数。

dataType 属性指定了服务器返回的数据类型,这里设置为JSON。

success 属性指定了请求成功时的回调函数,当服务器成功返回数据时,该函数会被调用。

在示例中,我们将返回的数据打印到控制台。

error 属性指定了请求失败时的回调函数,当请求发生错误时,该函数会被调用。

在示例中,我们将错误信息打印到控制台。

你可以根据自己的需求修改示例代码中的URL、请求方法、参数和回调函数,以及处理返回数据的逻辑。

Web前端开发实训案例教程初级AJAX异步请求与数据交互

Web前端开发实训案例教程初级AJAX异步请求与数据交互

Web前端开发实训案例教程初级AJAX异步请求与数据交互在Web前端开发中,实现异步请求和数据交互是一个非常重要的技能。

AJAX(Asynchronous JavaScript and XML)是一种用于在Web应用程序中向服务器发送和接收数据的技术,它可以实现页面的无刷新更新,提升用户体验。

本文将介绍初级AJAX异步请求和数据交互的案例教程。

一、AJAX基础知识概述AJAX使用JavaScript和XML来实现异步数据交互。

在传统的Web 开发中,页面的更新通常需要重新加载整个页面,这对于用户体验来说是一个很大的缺点。

而AJAX可以通过局部更新页面的方式,只重新加载需要变化的部分,从而提升用户的交互体验。

AJAX的基本原理是通过XMLHttpRequest对象向服务器发送异步请求,然后在服务器返回数据后再进行页面的更新。

在实际开发中,可以使用现代的Web开发框架如jQuery等来简化AJAX的操作。

二、案例教程:实现实时搜索建议功能在本案例教程中,我们将展示如何使用AJAX实现一个实时搜索建议功能。

该功能可以在用户输入关键词时,实时向服务器发送请求获取匹配的搜索建议,并将结果显示在页面上。

1. 准备工作首先,我们需要准备一个用于接收搜索请求的后端API。

这个API 可以是一个简单的服务器接口,接收带有关键词参数的GET请求,并返回匹配的搜索建议结果。

2. 前端代码实现在HTML页面上,我们需要添加一个输入框和一个用于展示搜索建议的区域。

用户输入关键词时,将触发一个JavaScript函数,该函数将使用AJAX向后端API发送请求,并将返回的结果渲染到页面上。

以下是一个简单的示例代码:```html<input type="text" id="keyword" onkeyup="getSuggestions()"><ul id="suggestions"></ul><script>function getSuggestions() {var keyword = document.getElementById("keyword").value;var url = "/api/suggestions?keyword=" + keyword;// 创建XMLHttpRequest对象var xmlhttp = new XMLHttpRequest();xmlhttp.onreadystatechange = function() {if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {var suggestions = JSON.parse(xmlhttp.responseText);var suggestionsList = document.getElementById("suggestions");suggestionsList.innerHTML = "";// 渲染搜索建议for (var i = 0; i < suggestions.length; i++) {var li = document.createElement("li");li.appendChild(document.createTextNode(suggestions[i]));suggestionsList.appendChild(li);}}};// 发送AJAX请求xmlhttp.open("GET", url, true);xmlhttp.send();}</script>```以上代码使用了原生的JavaScript来实现AJAX请求和数据的更新。

jQuery Ajax 实例 全解析

jQuery Ajax 实例 全解析

jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯。

废话少说,直接进入正题,我们先来看一些简单的方法,这些方法都是对jQuery.ajax()进行封装以方便我们使用的方法,当然,如果要处理复杂的逻辑,还是需要用到jQuery.ajax()的(这个后面会说到).1. load( url, [data], [callback] ) :载入远程HTML 文件代码并插入至DOM 中。

url (String) : 请求的HTML页的URL地址。

data (Map) : (可选参数) 发送至服务器的key/value 数据。

callback (Callback) : (可选参数) 请求完成时(不需要是success的)的回调函数。

这个方法默认使用GET 方式来传递的,如果[data]参数有传递数据进去,就会自动转换为POST方式的。

jQuery 1.2 中,可以指定选择符,来筛选载入的HTML 文档,DOM 中将仅插入筛选出的HTML 代码。

语法形如"url #some > selector"。

这个方法可以很方便的动态加载一些HTML文件,例如表单。

示例代码:$(".ajax.load").load("/yeer/archive/2009/06/10/ 1500682.html .post",function (responseText, textStatus, XMLHttpRequest){this;//在这里this指向的是当前的DOM对象,即$(".ajax.load")[0]//alert(responseText);//请求返回的内容//alert(textStatus);//请求状态:success,error//alert(XMLHttpRequest);//XMLHttpRequest对象});这里将显示结果。

jQuery AJAX和JSON例子

jQuery AJAX和JSON例子

基于jQuery的AJAX和JSON的实例通过jQuery内置的AJAX功能,直接访问后台获得JSON格式的数据,然后通过jQuer把数据绑定到事先设计好的html模板上,直接在页面上显示。

我们先来看一下html模板:<table id="datas" border="1" cellspacing="0" style="border-collapse: collapse"><tr><th>订单ID</th><th>客户ID</th><th>雇员ID</th><th>订购日期</th><th>发货日期</th><th>货主名称</th><th>货主地址</th><th>货主城市</th><th>更多信息</th></tr><tr id="template"><td id="OrderID"></td><td id="CustomerID"></td><td id="EmployeeID"></td><td id="OrderDate"></td><td id="ShippedDate"></td><td id="ShippedName"></td><td id="ShippedAddress"></td><td id="ShippedCity"></td><td id="more"></td></tr></table>一定要注意的就是里面所有的id属性,这个是一个关键。

jquery中ajax请求的使用和四个步骤示例

jquery中ajax请求的使用和四个步骤示例

jquery中ajax请求的使⽤和四个步骤⽰例ajax() ⽅法⽤于执⾏ AJAX(异步 HTTP)请求,所有的 jQuery AJAX ⽅法都使⽤ ajax() ⽅法,该⽅法通常⽤于其他⽅法不能完成的请求。

基本的语法是:$.ajax({name:value, name:value, … })下⾯是通常使⽤的⽰例:$.ajax({type:'POST', // 规定请求的类型(GET 或 POST)url:uploadV, // 请求的url地址dataType:'json', //预期的服务器响应的数据类型data:{},//规定要发送到服务器的数据beforeSend:function(){ //发送请求前运⾏的函数(发送之前就会进⼊这个函数)// ....},success: function(result){ // 当请求成功时运⾏的函数//...},error:function(result){ //失败的函数//...},complete:function(){ //请求完成时运⾏的函数(在请求成功或失败之后均调⽤,即在 success 和 error 函数之后,不管成功还是失败都会进这个函数) // ...}});如果还需要其他参数,参考下⾯列举的⼀下其他的可以⽤到的名称和值:名称值/描述async布尔值,表⽰请求是否异步处理。

默认是 true。

beforeSend(xhr)发送请求前运⾏的函数。

cache布尔值,表⽰浏览器是否缓存被请求页⾯。

默认是 true。

complete(xhr,status)请求完成时运⾏的函数(在请求成功或失败之后均调⽤,即在 success 和 error 函数之后)。

contentType发送数据到服务器时所使⽤的内容类型。

默认是:”application/x-www-form-urlencoded”。

context为所有 AJAX 相关的回调函数规定 “this” 值。

ajax请求的例子

ajax请求的例子

ajax请求的例子Ajax(Asynchronous JavaScript and XML)是一种用于创建交互式网页应用的技术。

它通过在后台与服务器进行数据交换,实现页面的异步更新,避免了页面的重新加载,提高了用户体验。

下面将为大家介绍一些使用Ajax进行数据请求的例子。

例子一:获取用户信息假设我们有一个网页,需要获取用户的姓名和年龄。

我们可以使用Ajax发送请求,将用户信息发送给服务器,并在页面上显示出来。

以下是使用jQuery库实现的示例代码:```javascript$.ajax({url: "/user",type: "GET",dataType: "json",success: function(response) {var name = ;var age = response.age;$("#name").text(name);$("#age").text(age);}});例子二:搜索功能假设我们有一个搜索框,用户可以在其中输入关键词,并实时获取相关的搜索结果。

以下是一个使用Ajax实现的搜索功能的示例代码:```javascript$("#search-input").on("input", function() {var keyword = $(this).val();$.ajax({url: "/search",type: "GET",data: { keyword: keyword },dataType: "json",success: function(response) {var results = response.results;$("#search-results").empty();for (var i = 0; i < results.length; i++) {$("#search-results").append("<li>" + results[i] + "</li>");}}});});例子三:加载更多内容假设我们有一个新闻网站,页面上只显示了部分新闻内容,用户可以点击“加载更多”按钮来获取更多的新闻。

JSP Ajax实例

JSP  Ajax实例

JSP Ajax实例在前面的章节介绍了JavaScript、XML、CSS、DOM以及XMLHttpRequest对象。

在本节中,将以案例的方式介绍,在客户端利用JavaScript代码和XMLHttpRe quest对象编写Ajax代码,实现客户端与服务器端的通信。

首先创建服务器端代码,打开记事本,输入下列代码:将上述代码保存,名称为number1.jsp。

在文件中,主要实现获取客户端传递的参数birthDate的值,并依据获取的值返回1或2。

将该文件直接保存Tomcat安装目录下,即C:\Tomcat 6.0\webapps\ajax下。

将上述代码保存,名称为numbr.jsp。

将该文件同上面文件保存在同一个文件内即可。

启动Tomcat服务器,打开IE浏览器,在地址栏中输入http://localhost:8080/ ajax/number.jsp,单击【转到】,会显示HTML网页窗口,在【输入数字】文本域中输入数字5,会显示如图8-12所示窗口。

在该文本域中输入其他数字,会显示如图8-13所示窗口:图8-12 数字校验1 图8-13 数字校验2在该文件中,函数createXMLHttpRequest()主要用来创建XMLHttpRequest对象,validate()函数主要作用是向服务器端发送请求信息,其方式为get,发送信息为空,参数值通过URL传递到服务端。

函数callback()主要用来处理从服务器端传递的信息,并做出设置。

函数setMessage()和setMessage1()主要用来设置数据的显示样式。

函数trim()主要是移除字符串两侧的空格。

其运行步骤是,在文本域中输入数字后会触发文本域的文本内容改变事件,即调用JavaScript函数validate(),该函数发送信息到服务器端,服务器端返回信息后交callback()函数处理,callback()函数根据返回值的不同分别调用setMessage()和set Message1()函数设置数据样式。

ajax webapi实例

ajax webapi实例

以下是一个使用Ajax调用Web API的示例:HTML代码:```html<!DOCTYPE html><html><head><title>Ajax Call to Web API</title></head><body><button id="btnGetData">Get Data</button> <div id="divData"></div><script src="script.js"></script></body></html>```JavaScript代码(script.js):```javascriptdocument.getElementById("btnGetData").addEventListener("click", function () {var xhr = new XMLHttpRequest();xhr.onreadystatechange = function () {if (xhr.readyState === 4 && xhr.status === 200) {var data = JSON.parse(xhr.responseText);var html = "<ul>";for (var i = 0; i < data.length; i++) {html += "<li>" + data[i].Name + "</li>";}html += "</ul>";document.getElementById("divData").innerHTML = html;} else if (xhr.readyState === 4) {console.log("Error: " + xhr.statusText);}};xhr.open("GET", "/api/data", true); // Replace "/api/data" with your Web API endpoint URLxhr.send();});```上述示例中,当用户单击“Get Data”按钮时,将通过Ajax调用Web API并获取数据。

layuiAjax请求给下拉框赋值的实例

layuiAjax请求给下拉框赋值的实例

layuiAjax请求给下拉框赋值的实例如下所⽰:<!DOCTYPE html><html><head><title>排课设置</title><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport"content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"><meta name="renderer" content="webkit"><link rel="stylesheet" href="/vendor/layui/css/layui.css" rel="external nofollow" media="all"></head><body><div class="layui-form" lay-filter="boardFilter"><hr><div class="layui-form-pane layui-tab-content" style="margin: -10px auto;"><div class="layui-inline"><label class="layui-form-label" style="width: 100px;">查询内容</label><div class="layui-input-inline" style="width: 250px;"><input class="layui-input" name="schName" placeholder="请输⼊学校名称" id="schName" autocomplete="off"></div></div><div class="layui-inline"><label class="layui-form-label" style="width: 100px;">学期</label><div class="layui-input-inline" style="width: 200px;"><select name="termId" id="termId"></select></div></div><div class="layui-inline"><label class="layui-form-label" style="width: 100px;">列表状态</label><div class="layui-input-inline" style="width: 150px;"><select name="msgType" id="msgType"><option value="">全部状态</option><option value="1">申请中</option><option value="2">确认申请</option><option value="3">已经发布</option><option value="0">已撤销</option></select></div></div><div class="layui-inline toolbarBtn"><button class="layui-btn layui-btn-sm layui-btn-normal" lay-submit="" lay-filter="getSearch" id="getSearch" name="getSearch"><i class="layui-icon">&#xe615;</i> 查询</button> </div></div></div><table class="layui-table" id="infoTable" lay-filter="filterTable"></table><script type="text/javascript" src="/vendor/jquery/jquery-1.11.3.min.js"></script><script type="text/javascript" src="/vendor/layui/layui.js"></script><script type="text/html" id="action"><a class="layui-btn layui-btn-xs layui-btn-primary" lay-event="view">查看</a>{{# if(d.status===2){ }}<a class="layui-btn layui-btn-xs" lay-event="send">推送</a>{{# } }}{{# if(d.status===3){ }}<a href='{{d.url}}' class='layui-btn layui-btn-xs'>下载排课表</a>{{# } }}</script><script type="text/html" id="courseArrangeFlag">{{# if(d.courseArrangeFlag===0){ }}<h>⾏政班排课</h>{{# } else { }}<h>⾛班排课</h>{{# } }}</script><script type="text/html" id="status">{{# if(d.status===0){ }}<h>撤消申请</h>{{# } else if(d.status===1){ }}<h>申请中</h>{{# } else if(d.status===2){ }}<h>排课中</h>{{# } else if(d.status===3){ }}<h>已经推送</h>{{# } else if(d.status===4){ }}<h>已发布课程表</h>{{# } }}</script><script>e(['table','layer'], function() {var table = layui.table,form = layui.form;var $ = layui.jquery, layer = yer;var tableIns = table.render({elem: '#infoTable',url: '/web/courseArrange/list',id: 'idTable',page: true,limits: [10,20,50,100],limit: 10 //默认采⽤10,cols: [[ //标题栏{checkbox: true, fixed: true},{field: 'courseArrangeId', title: '序号', fixed: true},{field: 'schName', title: '学校名称'},{field: 'courseArrangeFlag', title: '排课类型', templet: '#courseArrangeFlag'},{field: 'termName', title: '学期'},{field: 'recordTime', title: '申请时间'},{field: 'status', title: '状态', templet: '#status'},{field: 'action', title: '操作', templet: '#action'}]]});//监听管理操作form.on('switch(schControlInput)', function(obj){var normalValueif(obj.elem.checked){normalValue = '0';}else{normalValue = '1';}$.ajax({url:'/school/editIsNormalSchool',type:"POST",dataType:"json",data:{"schId":this.value, "statusValue":normalValue},success:function(res){location.reload();},});});// 监听Table⼯具条table.on('tool(filterTable)', function(obj) {var data = obj.data;if (obj.event === 'view') {location.href="courseArrangeView.html?id=" rel="external nofollow" +data.courseArrangeId+"&schId="+data.schId+"&areaId="+data.areaId;}else if (obj.event === 'send') {layer.open({type: 2,title: '导⼊并推送',maxmin: true,shadeClose: false, //点击遮罩关闭层area : ['700px' , '600px'],content: '/page/business/course/courseArrangeUpload.html?schId='+data.schId+'&areaId='+data.areaId+'&termId='+data.termId+'&courseArrangeFlag='+data.courseArrangeFlag+'&phone='+data.phone ,btn: '关闭',btnAlign: 'c' //按钮居中,shade: 0 //不显⽰遮罩,yes: function(){layer.closeAll();},end: function () {location.reload();}});}});form.on('submit(getSearch)', function(data){table.reload('idTable', {where: data.field});});$(document).ready(function () {$("select[name=termNm]").empty();$.ajax({async: false,type: "POST",url: "/web/courseArrange/termList",dataType: "json",data: {},success: function (res) {var opt = "<option value='' selected = \'selected\'>全部</option>";$("select[name=termId]").append(opt);for(var i=0; i<res.data.length; i++){var option="<option value=\""+res.data[i].termId+"\"";option += ">"+res.data[i].termName+"</option>"; //动态添加数据$("select[name=termId]").append(option);}layui.form.render('select','boardFilter');}});});});</script></body></html>以上这篇layui Ajax请求给下拉框赋值的实例就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。

ajax.then 用法

ajax.then 用法

ajax.then 用法
ajax.then 是用来处理Promise 的,它接受两个参数:第一个参数是成功的回调函数,第二个参数是失败的回调函数。

下面是一个简单的例子:
javascript
$.ajax({
url: 'some_url',
type: 'GET',
success: function(data) {
console.log('Success:', data);
}
}).then(function(data) {
console.log('Success again:', data);
}, function(error) {
console.log('Error:', error);
});
在上面的例子中:
1.当AJAX 请求成功时,我们首先执行内部的success 回调,然后是外部的.then 的
第一个回调。

2.如果AJAX 请求失败,则首先执行内部的error 回调(如果提供了的话),然后是外
部的.then 的第二个回调。

需要注意的是,.then 返回的也是一个Promise,这意味着你可以链式调用多个.then 方法。

还有一点要注意的是,从jQuery 3.0 开始,.done、.fail、.always 等方法已经被弃用,建议使用.then 来代替。

所以,在现代的jQuery 或原生JavaScript 中,你更可能会看到.then 的使用。

Ajax介绍及重要应用场景

Ajax介绍及重要应用场景

Ajax介绍及重要应⽤场景向服务器发送请求的途径1、浏览器的地址栏:GET请求2、form表单:GET与POST均可3、a标签:GET请求4、Ajax:⽤的最多、最⼴5、其余的还有:link标签的href属性、img标签的src属性、script标签的src属性Ajax简介AJAX(Asynchronous Javascript And XML)翻译成中⽂就是“异步的Javascript和XML”。

即使⽤Javascript语⾔与服务器进⾏异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在更多使⽤json数据)。

AJAX 不是新的编程语⾔,⽽是⼀种使⽤现有标准的新⽅法。

AJAX 最⼤的优点是在不重新加载整个页⾯的情况下,可以与服务器交换数据并更新部分⽹页内容。

(这⼀特点给⽤户的感受是在不知不觉中完成请求和响应过程)AJAX 不需要任何浏览器插件,但需要⽤户允许JavaScript在浏览器上执⾏。

a.同步交互:客户端发出⼀个请求后,需要等待服务器响应结束后,才能发出第⼆个请求; b.异步交互:客户端发出⼀个请求后,⽆需等待服务器响应结束,就可以发出第⼆个请求。

AJAX除了异步的特点外,还有⼀个就是:浏览器页⾯局部刷新;(这⼀特点给⽤户的感受是在不知不觉中完成请求和响应过程。

对于AJAX的操作,其实就是两点:⼀是向后台提交请求数据;⼆是回调函数接收到后台响应的数据后进⾏的处理。

简单事例利⽤ajax实现局部计算~urlpatterns = [...url(r'^ajax_add/', views.ajax_add),url(r'^ajax_demo1/', views.ajax_demo1),...]路由<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="x-ua-compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>AJAX局部刷新实例</title></head><body><input type="text" id="i1">+<input type="text" id="i2">=<input type="text" id="i3"><input type="button" value="AJAX提交" id="b1"><script src="/static/jquery-3.2.1.min.js"></script><script>$("#b1").on("click", function () {$.ajax({url:"/ajax_add/", //别忘了加双引号type:"GET",data:{"i1":$("#i1").val(),"i2":$("#i2").val()}, //object类型,键值形式的,可以不给键加引号success:function (data) {$("#i3").val(data);}})})</script></body></html>html⽂件def ajax_demo1(request):return render(request, "ajax_demo1.html")def ajax_add(request):#time.sleep(10) #不影响页⾯发送其他的请求i1 = int(request.GET.get("i1"))i2 = int(request.GET.get("i2"))ret = i1 + i2return JsonResponse(ret, safe=False)#return render(request,'index.html') #返回⼀个页⾯没有意义,就是⼀堆的字符串,拿到了这个页⾯,你怎么处理,你要做什么事情,根本就没有意义视图函数Ajax常见应⽤场景(1)搜索引擎根据⽤户输⼊的关键字,⾃动提⽰检索关键字。

jquery_ajax_完全使用手册.pdf

jquery_ajax_完全使用手册.pdf

参数: optio ns返回值: xml HttpReq uest使用HTTP请求一个页面。

这是jque ry的低级ajax实现。

要查看高级抽象,见$.set、$.post等,这些方法更易于理解和使用。

但是功能上有限制(例如,没有错误处理函数)。

警告:如果数据类型指定为"scrip t",那么POST自动转化为GET方法。

(因为script会作为一个嵌入页面的script标签进行载入)$.ajax()函数返回它创建的XMLH ttpRequest对象。

在大部分情况下,你不需要直接操作此对象。

通常,这个XMLH ttpReq uest对象主要用于需要手动中断XMLH ttpRequest请求的时候。

注意:如果你指明了下面列出的数据类型,请确保服务端发送了正确的MIME响应类型(如. xml 的类型是"te xt/xml")。

错误的MIME类型能够导致脚本出现意想不到的问题。

请查看AJAX的范例来了解数据类型的更多信息。

$.ajax()函数需要一个参数,一个包含有键/值对的对象,用于初始化并操作请求对象。

在jQue ry 1.2版本中,如果你指明了一个JSONP回调函数,你就可以从其它的域中载入JSON类型的数据,写法类似于"myurl?callback=?" 。

jQuery会自动调用正确的方法名称来代替查询字符串,执行你指定的回调函数。

或者,你也可以指定jso np的数据类型的回调函数,此函数会自动添加到Ajax请求中。

参数选项:async(true) 数据类型: Boolean默认情况下,所有的请求都是异步发送的(默认为true)。

如果需要发送同步请求, 设置选项为false。

注意,同步请求可能会暂时的锁定浏览器, 当请求激活时不能进行任何操作。

beforeSe nd 数据类型: Functio n一个预处理函数用于在发送前修改XMLHttpReq uest对象,设置自定义头部等。

基于jQuery的AJAX和JSON的实例

基于jQuery的AJAX和JSON的实例

基于jQuery的AJAX和JSON的实例通过jQuery内置的AJAX功能,直接访问后台获得JSON格式的数据,然后通过jQuer把数据绑定到事先设计好的html模板上,直接在页面上显示。

我们先来看一下html模板:<table id="datas" border="1" cellspacing="0" style="border-collapse: collapse"><tr><th>订单ID</th><th>客户ID</th><th>雇员ID</th><th>订购日期</th><th>发货日期</th><th>货主名称</th><th>货主地址</th><th>货主城市</th><th>更多信息</th></tr><tr id="template"><td id="OrderID"></td><td id="CustomerID"></td><td id="EmployeeID"></td><td id="OrderDate"></td><td id="ShippedDate"></td><td id="ShippedName"></td><td id="ShippedAddress"></td><td id="ShippedCity"></td><td id="more"></td></tr></table>一定要注意的就是里面所有的id属性,这个是一个关键。

SSH框架 CRUD及验证 ajax校验 完整实例(一)

SSH框架 CRUD及验证 ajax校验 完整实例(一)

SSH框架下CRUD及验证完整实例(一)一准备工作●目标和工具在学习Java两个月之后,尝试使用学过的东西写一个最简单的页面,实现对一张数据库进行基本的CRUD操作和分页,顺便增加服务端验证和Ajax动态验证以及简单的验证码.使用的工具和环境如下:SSH框架(Struts2.1.6,Spring2.5,Hibernate3.2), Myeclipse8.0, Oracle10g数据库,JS类库prototype.js,json2.js. 数据库连接池使用的是proxool,应用到的jar 包如下图,其中dojo和dwr两个插件是后期添加功能时要用,本实例没有用到,在添加项目Hibernate和Spring支持的时候冲突的架包已经删除.●项目的目录结构源文件的目录结构如左图,其中pass文件夹放的是一些历史文件,和本例无关.项目按照mvc框惯例,分为action, dao, model, service, web五层.jsp文件如右图所示放在了WebRoot/per文件夹下,连同js库文件,其中register.jsp是测试验证码使用的.项目对应的数据库表二开发步骤首先新建web项目crm,依次为项目添加SSH支持,接着用工具或命令在数据库中建立数据表PERSON,4个列ID,NAME,AGE,ADDRESS,其中ID为主键.接着在Myeclipse中打开database 试图,为数据库新建一个连接或者使用已有的连接.接下来可以选择直接在database试图中选中PERSON表使用Hibernate反向工程自动生成实体Dao和映射表,也可以自己编写这些文件,相关代码如下.model层,包名com.person.crm.modelDao层,包名com.person.crm.dao业务层service 包名com.person.crm.service PersonManager.java 业务层接口●web层包名com.person.crm.web一个用于生成验证码的类●action层负责处理用户请求包名com.person.crm.actionPersonAction.properties处理PersonAction中类型转换错误信息PersonAction-add-validation.xml和PersonAction-update-validation.xml。

JQuery中Ajax的操作完整例子

JQuery中Ajax的操作完整例子

JQuery中Ajax的操作完整例⼦Java软件开发中,后台中我们可以通过各种框架,像SSH等进⾏对代码的封装,⽅便我们对Java代码的编写,例如,Struts,SpringMVC对从前台到action的流程进⾏封装控制,使我们只需要进⾏⼀些简单配置就可以实现;⽽spring进⾏了对各种对象的管理进⾏封装,提供了AOP编程的⽅式,⼤⼤⽅便了我们;⽽hibernate和IBatis则是对JDBC代码进⾏封装,不需要我们每次都写那些重复⽽繁杂的JDBC代码。

前台呢,对于页⾯⼀些效果,验证等,我们都是通过JavaScript语⾔进⾏完成的,但是它也就像我们的Java代码⼀样,是最前台语⾔最基础的,⽽jQuery则是对js代码进⾏封装⽅便我们前台代码的编写,⽽且它还有⼀个⾮常⼤的优势就是解决了浏览器的兼容问题,这也是我们使⽤它⾮常重要的原因之⼀。

⽽现在为了满⾜⽤户的需求,Ajax(Asynchronous Javascript + XML)异步刷新起到了⽆可⽐拟的作⽤,以前写Ajax操作,总是需要我们想JDBC代码⼀样进⾏⼏个必备的步骤:AJAX——核⼼XMLHttpRequest对象,⽽JQuery也对Ajax异步操作进⾏了封装,这⾥看⼀下⼏种常⽤的⽅式。

$.ajax,$.post, $.get, $.getJSON。

⼀, $.ajax,这个是JQuery对ajax封装的最基础步,通过使⽤这个函数可以完成异步通讯的所有功能。

也就是说什么情况下我们都可以通过此⽅法进⾏异步刷新的操作。

但是它的参数较多,有的时候可能会⿇烦⼀些。

看⼀下常⽤的参数:var configObj = {method //数据的提交⽅式:get和posturl //数据的提交路劲async //是否⽀持异步刷新,默认是truedata //需要提交的数据dataType //服务器返回数据的类型,例如xml,String,Json等success //请求成功后的回调函数error //请求失败后的回调函数}$.ajax(configObj);//通过$.ajax函数进⾏调⽤。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

写在前面的话:
用了很久的 Ajax,也看了段时间的jquery中ajax的应用,但到头来,居然想不起xmlHttpRequest的该如何使用了.
以前记的也不怎么清楚,这次就重新完整的学习一遍吧,也为了自己以后能找个完整的地方来复习.
什么是Ajax
Ajax的全称是Asynchronous Javascript And XML.AJax由HTML,Javascript,DHTML和DOM组成. HTML用于建立Web表单
Javascript代码用于运行Ajax应用程序的核心代码,用于和服务器引用程序进行通信
DHTML用于动态更新表单
DOM用于处理HTML结构和服务器返回的XML
时至今日,Js中可以处理的数据包括了字符串,JSON,XML数据.
优点
通过XMLHttpRequest对象来和服务器进行通信;在与服务器进行异步数据传输时,传输的数据更少;更好的用户体验.
实例
get.htm页面HTML代码如下:
<body>
<label for="txt_username">
姓名:</label>
<input type="text" id="txt_username" />
<br />
<label for="txt_age">
年龄:</label>
<input type="text" id="txt_age" />
<br />
<input type="button" value="GET" id="btn" onclick="btn_click();" /> <div id="result">
</div>
</body>
js代码如下:
<script type="text/javascript">
function btn_click() {
//创建XMLHttpRequest对象
var xmlHttp = new XMLHttpRequest();
//获取值
var username = document.getElementById("txt_username").value;
var age = document.getElementById("txt_age").value;
//配置XMLHttpRequest对象
xmlHttp.open("get", "Get.aspx?username=" + username
+ "&age=" + age);
//设置回调函数
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { document.getElementById("result").innerHTML = xmlHttp.responseText;
}
}
//发送请求
xmlHttp.send(null);
}
</script>
新建Get.aspx页,Get.aspx.cs代码如下:
protected void Page_Load(object sender, EventArgs e)
{
Response.Clear();
string username = Request.QueryString["username"];
string age = Request.QueryString["age"];
Response.Write("姓名:'" + username + "'<br/>年龄:" + age + "<br/>时间:'" + DateTime.Now.ToString() + "'");
Response.End();
}
结果:
输入姓名和年龄,点击Get按钮,就会从服务器获取到数据.
小结:
今天暂时写一个完整的例子来显示Ajax的调用过程,此例中存在许多问题:
1. 如何创建在大部分浏览器中都能运行的XMLHttpRequest对象.
2. 使用get请求时存在缓存问题
3. 中文乱码问题
针对这些已经出现的问题,我们在随后的例子中会一一解决.
对于其他的疑问,比方说:
1. 如何使用post传递数据
2. post和get有什么区别
3. 如何使用传输和使用json数据
4. 如何传输和使用xml数据(毕竟,Ajax最后的一个字母x指的是XML) 对于这些疑问,我们在随后的文章里也会一一解决的.。

相关文档
最新文档