如何在进入页面就加载ajax_AJAX

训练大纲(第050天)

大家如果想快速有效的学习,思想核心是“以建立知识体系为核心”,具体方法是“守破离”。确保老师课堂上做的操作,反复练习直到熟练。

第99-100次(AJAX深入练习)

学习主题:AJAX深入练习

学习目标:

1 熟练使用ajax写功能

对应视频:

http://www.itbaizhan.cn/course/id/85.html

对应文档:

对应作业

01ajax之三级联动案例分析

1.1简答题

根据视频中的讲解,完成以下内容

  1. 视频中的三级联动案例的功能需求是什么

页面中有三个下拉框选项,分别为省、市、区/县下拉框,选择省,则市下拉框中出现对应的该省下的市信息,选择市,则区/县下拉框中出现对应的该市下面的区/县信息

  1. 视频中的需求分析的内容是
  1. 创建页面:页面中有三个下拉框,分别为省、市、区/县下拉框
  2. 页面加载成功发起ajax请求,请求省的信息,并将响应结果填充到省下拉框中
  3. 选择省触发一个新的js函数的执行,该函数中发起新的ajax请求,请求该省下的市信息,并将响应数据填充到市下拉框
  4. 选择市信息触发一个新的js函数的执行,该函数发起新的ajax请求,请求该市下的区/县信息,并将响应数据填充到区/县下拉框中。

02-ajax之三级联动数据库设计和实现

2.1 编程题

2.1.1 根据视频讲解完成三级联动数据库表设计。

地区id:areaid

地区名:areaname

地区上级:parentid

2.1.2 根据视频讲解完成三级联动案例的SQL语句设计。

查询所有的省信息

select * from area where parentid=0;

查询选择的省的市信息(假如山东省的areaid为110000)

select * from area where parentid=110000;

查询选择的省的市信息(假如山东省的济南市的areaid为110001)

select * from area where parentid=110001;

2.1.3 根据视频讲解将area.sql文件导入到数据库中。

f5fa240ab2de1c0a2558c53054beadea.png

03 ajax之三级联动代码实现获取所有的省信息

3.1 上机练习

3.2.1 根据视频讲解完成前台jsp页面的创建。

<body style="background-color: gray">

<div style="width: 800px;margin: auto;margin-top:200px" >

省:<select name="" id="" style="height: 30px;width: 200px;"></select>

市:<select name="" id="" style="height: 30px;width: 200px;"></select>

区/县:<select name="" id="" style="height: 30px;width: 200px;"></select>

</div>

</body>

e66ba61f11b40d8d9e93d2b417e01f2c.png

3.2.2 在select.jsp中声明ajax代码请求省信息

<script type="text/javascript">

//页面加载成功请求省的信息

$(function(){

//发起ajax请求,请求所有的省的信息

$.get("area",{parentid:0},function(data){

//将响应的省数据填充到省下拉框中

alert(data);

});

})

</script>

3.2.3 完成请求省信息的后台功能,并能alert出请求的省信息。

5d09b44f7a0a7737c6e1933f48bb17de.png

04ajax之三级联动实现省信息填充和市信息功能

4.1编程题

  1. 根据视频,将省信息填充到省下拉框中?

<script type="text/javascript">

//页面加载成功请求省的信息

$(function(){

//发起ajax请求,请求所有的省的信息

$.get("area",{parentid:0},function(data){

//使用eval方法将数据转换为js对象

eval("var areas="+data);

//将响应的省数据填充到省下拉框中

//获取下拉框对象

var sel = $("#pre");

//清空内容

sel.empty();

//遍历

for(var i=0;i<areas.length;i++){

//填充

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

});

})

</script>

90ee1dafceebbbc8a2bf7047f4afb36b.png

4.1.2 根据视频讲解完成市信息下拉框功能?

<script type="text/javascript">

//页面加载成功请求省的信息

$(function(){

//发起ajax请求,请求所有的省的信息

$.get("area",{parentid:0},function(data){

//使用eval方法将数据转换为js对象

eval("var areas="+data);

//将响应的省数据填充到省下拉框中

//获取下拉框对象

var sel = $("#pre");

//清空内容

sel.empty();

//遍历

for(var i=0;i<areas.length;i++){

//填充

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

});

//页面加载成功给省下拉框添加onchange事件

$("#pre").change(function(){

//获取当前选择的省的id

var areaid = $("#pre").val();

//发起ajax请求,请求当前省的市信息

$.get("area",{parentid:areaid},function(data){

//使用eval方法将数据转成js对象

eval("var areas="+data);

//获取下拉框对象

var sel = $("#city");

sel.empty();

for(var i=0;i<areas.length;i++){

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

});

});

})

</script>

fa7f8ee6837edbaebc5194704d165ecb.png

05ajax之三级联动代码完整实现

5.1 简答题

5.1.1 根据视频讲解完成城镇信息下拉框功能?

<script type="text/javascript">

//页面加载成功请求省的信息

$(function(){

//发起ajax请求,请求所有的省的信息

$.get("area",{parentid:0},function(data){

//使用eval方法将数据转换为js对象

eval("var areas="+data);

//将响应的省数据填充到省下拉框中

//获取下拉框对象

var sel = $("#pre");

//清空内容

sel.empty();

//遍历

for(var i=0;i<areas.length;i++){

//填充

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

//触发省下拉框的change事件

$("#pre").trigger("change");

});

//页面加载成功给省下拉框添加onchange事件

$("#pre").change(function(){

//获取当前选择的省的id

var areaid = $("#pre").val();

//发起ajax请求,请求当前省的市信息

$.get("area",{parentid:areaid},function(data){

//使用eval方法将数据转成js对象

eval("var areas="+data);

//获取下拉框对象

var sel = $("#city");

sel.empty();

for(var i=0;i<areas.length;i++){

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

//触发省的市下拉框的change事件

$("#city").trigger("change");

});

});

//页面加载成功,给市下拉框添加监听事件

$("#city").change(function(){

//获取当前选择的省的市的id

var areaid = $("#city").val();

//发起ajax请求,请求当前省的市的区县信息

$.get("area",{parentid:areaid},function(data){

//使用eval方法将数据转成js对象

eval("var areas="+data);

//获取下拉框的对象

var sel = $("#town");

sel.empty();

for(var i=0;i<areas.length;i++){

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

});

});

});

</script>

5a6926edf61d72a85d016f14ce549317.png

5.1.2 根据视频讲解,目前实现的三级联动中为什么选择省信息后,市信息为改变但是城镇信息还是不变?如何解决?并在代码实现。

分别给省和市添加自己的监听事件

<script type="text/javascript">

//页面加载成功请求省的信息

$(function(){

//发起ajax请求,请求所有的省的信息

$.get("area",{parentid:0},function(data){

//使用eval方法将数据转换为js对象

eval("var areas="+data);

//将响应的省数据填充到省下拉框中

//获取下拉框对象

var sel = $("#pre");

//清空内容

sel.empty();

//遍历

for(var i=0;i<areas.length;i++){

//填充

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

//触发省下拉框的change事件

$("#pre").trigger("change");

});

//页面加载成功给省下拉框添加onchange事件

$("#pre").change(function(){

//获取当前选择的省的id

var areaid = $("#pre").val();

//发起ajax请求,请求当前省的市信息

$.get("area",{parentid:areaid},function(data){

//使用eval方法将数据转成js对象

eval("var areas="+data);

//获取下拉框对象

var sel = $("#city");

sel.empty();

for(var i=0;i<areas.length;i++){

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

//触发省的市下拉框的change事件

$("#city").trigger("change");

});

});

//页面加载成功,给市下拉框添加监听事件

$("#city").change(function(){

//获取当前选择的省的市的id

var areaid = $("#city").val();

//发起ajax请求,请求当前省的市的区县信息

$.get("area",{parentid:areaid},function(data){

//使用eval方法将数据转成js对象

eval("var areas="+data);

//获取下拉框的对象

var sel = $("#town");

sel.empty();

for(var i=0;i<areas.length;i++){

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

});

});

});

</script>

5.1.3 根据视频讲解完成代码的封装

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'select.jsp' starting page</title>

<script type="text/javascript" src="js/j.js"></script>

<script type="text/javascript">

//页面加载成功请求省的信息

$(function(){

//封装公共的方法

function getData(areaid,sid){

//发起ajax请求,请求当前省的市信息

$.get("area",{parentid:areaid},function(data){

//使用eval方法将数据转成js对象

eval("var areas="+data);

//获取下拉框对象

var sel = $("#"+sid);

sel.empty();

for(var i=0;i<areas.length;i++){

sel.append("<option value='"+areas[i].areaid+"'>"+areas[i].areaname+"</option>");

}

//触发省的市下拉框的change事件

$("#"+sid).trigger("change");

});

}

//发起ajax请求,请求所有的省的信息

getData(0, "pre");

//页面加载成功给省下拉框添加onchange事件

$("#pre").change(function(){

//获取当前选择的省的id

var areaid = $("#pre").val();

getData(areaid, "city");

});

//页面加载成功,给市下拉框添加监听事件

$("#city").change(function(){

//获取当前选择的省的市的id

var areaid = $("#city").val();

getData(areaid, "town");

});

});

</script>

</head>

<body style="background-color: gray">

<div style="width: 800px;margin: auto;margin-top:200px" >

省:<select name="" id="pre" style="height: 30px;width: 200px;"></select>

市:<select name="" id="city" style="height: 30px;width: 200px;"></select>

区/县:<select name="" id="town" style="height: 30px;width: 200px;"></select>

</div>

</body>

</html>

06ajax之搜索框提示语功能需求和思路分析

6.1 简答题

6.1.1 视频中的功能需求是什么?

用户在搜索框中输入关键字,然后搜索框下出现下拉选项,提示关键字的提示语。用户可以使用鼠标进行提示语的选择,也可以使用键盘上下键来进行选择。

6.1.2 视频讲解的功能分析(思路)的内容是?

1.创建搜索界面(搜索框和提示语div和搜索按钮)

2.给搜索框添加onkeyup事件,键盘弹起时发送ajax请求,请求当前用户输入的信息对应的提示语数据

3.将提示语数据填充到搜索框下的div中

4.实现使用鼠标选择提示语

5.实现使用键盘的上下键选择提示语

6.实现鼠标和键盘的联动操作

7.将显示提示语的div进行隐藏,当有提示语的时候显示隐藏的div

07ajax之搜索框提示语功能数据库设计和实现

7.1 简答题

7.1.1 根据视频讲解完成提示语功能的数据库设计?

创建表(data):存储了常用的关键字数据

关键字编号:id

关键字数据:title

说明:remark

7.1.2 根据视频讲解完成提示语功能的SQL语句设计。

查询以用户当前搜索框开头的关键字

Select * from data where ‘a%’;

7.1.3 根据视频讲解完成数据库的实现。

##创建关键字词汇表

create table t_data(

id int(10) not null auto_increment,

title varchar(100) not null,

remark varchar(500),

primary key(id)

)

##添加测数据

insert into t_data values(default,'aaa','');

insert into t_data values(default,'aac','');

insert into t_data values(default,'acd','');

insert into t_data values(default,'acb','');

insert into t_data values(default,'bbb','');

insert into t_data values(default,'bba','');

insert into t_data values(default,'cad','');

insert into t_data values(default,'cac','');

insert into t_data values(default,'cab','');

select * from t_data;

2a8dc491be29204485f8f1a4eda3dda1.png

08-ajax之搜索框体提示语功能页面创建和键盘事件添加

8.1 编程题

8.1.1 根据视频完成提示语功能页面的创建。

<body>

<!-- 创建容器div将搜索框div和提示语div显示在一起 -->

<div id="container" style="width: 350px;margin: auto">

<!-- 搜索框div -->

<div id="sdiv" style="width: 400px;margin: auto;margin-top:200px">

<input type="text" name="search" id="search" value="" style="height: 30px;width: 300px;font-size: 20px"/>

<input type="button" value="搜索" style="height: 30px; width:60px"/>

</div>

<!-- 提示语div -->

<div id="dataDiv" style="border: solid 1px; width: 298px;height: 200px;border-top: none"></div>

</div>

</body>

e4c471446e0ddbd060d51206d3926613.png

8.2.2完成键盘事件的添加。

<script type="text/javascript">

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//发起ajax请求,请求当前用户搜索框数据的提示语信息

});

});

</script>

09ajax之搜索框提示语功能后台逻辑实现

9.1 编程题

9.2.1 根据视频完成提示语功能后台代码的实现。

<script type="text/javascript">

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

alert(data);

});

});

});

</script>

ec458d772d537357ed70587ae5a35562.png

10ajax之搜索框提示语功能数据填充和键盘码判断

10.1编程题

10.1.1 根据视频,完成提示语数据填充到div中。

<script type="text/javascript">

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

//使用eval方法将数据转成js对象

eval("var data="+data);

//获取提示语div对象

var dataDiv=$("#dataDiv");

//清空原有内容

dataDiv.empty();

//将提示语数据填充到提示语div中

for(var i=0;i<data.length;i++){

dataDiv.append("<div style='margin:5px'>"+data[i].title+"</div>");

}

});

});

});

</script>

0d62bcb9f841b32f2205361f168192e4.png

10.2.2 根据视频判断键盘码完善ajax代码。

<script type="text/javascript">

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//获取event对象

var eve=window.event;

//获取用户当前点击的键盘简单code值

var code = eve.keyCode;

//判断code值是否符合要求

if(code>=65 && code<=90){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

//使用eval方法将数据转成js对象

eval("var data="+data);

//获取提示语div对象

var dataDiv=$("#dataDiv");

//清空原有内容

dataDiv.empty();

//将提示语数据填充到提示语div中

for(var i=0;i<data.length;i++){

dataDiv.append("<div style='margin:5px'>"+data[i].title+"</div>");

}

});

}

});

});

</script>

11ajax之搜索框提示语功能鼠标选择提示语

11.2 编程题

11.2.1 完成鼠标选择功能。

<script type="text/javascript">

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//获取event对象

var eve=window.event;

//获取用户当前点击的键盘简单code值

var code = eve.keyCode;

//判断code值是否符合要求

if(code>=65 && code<=90 || code==8){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//判断请求数据是否为空

if(sd==""){

return;

}

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

//使用eval方法将数据转成js对象

eval("var data="+data);

//获取提示语div对象

var dataDiv=$("#dataDiv");

//清空原有内容

dataDiv.empty();

//将提示语数据填充到提示语div中

for(var i=0;i<data.length;i++){

dataDiv.append("<div style='margin:5px'>"+data[i].title+"</div>");

}

//给提示语添加选择效果

$("#dataDiv div").mouseover(function(){

//清空所有提示语div的背景颜色

$("#dataDiv div").css("background-color","");

//将当前选择的div背景颜色变成灰色

$(this).css("background-color","gray");

});

//给提示语div添加单击事件

$("#dataDiv div").click(function(){

//将当前选择的提示语填充到搜索框中

$("#search").val($(this).html());

//将提示语div隐藏

$("#dataDiv").css("display","none");

});

});

}

});

});

</script>

12ajax之搜索框提示语功能键盘下键功能实现

12.1 编程题

12.1.1 完成视频下键选择功能。

<script type="text/javascript">

//计数器

var count=-1;

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//获取event对象

var eve=window.event;

//获取用户当前点击的键盘简单code值

var code = eve.keyCode;

//判断code值是否符合要求

if(code>=65 && code<=90 || code==8){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//判断请求数据是否为空

if(sd==""){

return;

}

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

//使用eval方法将数据转成js对象

eval("var data="+data);

//获取提示语div对象

var dataDiv=$("#dataDiv");

//清空原有内容

dataDiv.empty();

//显示隐藏的div

dataDiv.css("display","");

//将提示语数据填充到提示语div中

for(var i=0;i<data.length;i++){

dataDiv.append("<div style='margin:5px'>"+data[i].title+"</div>");

}

//给提示语添加选择效果

$("#dataDiv div").mouseover(function(){

//清空所有提示语div的背景颜色

$("#dataDiv div").css("background-color","");

//将当前选择的div背景颜色变成灰色

$(this).css("background-color","gray");

});

//给提示语div添加单击事件

$("#dataDiv div").click(function(){

//将当前选择的提示语填充到搜索框中

$("#search").val($(this).html());

//将提示语div隐藏

$("#dataDiv").css("display","none");

});

});

}

//判断用户点击的是否是下键

if(code==40){

//判断计数器的值是否超出范围

count=count<$("#dataDiv div").length-1?++count:0;

//判断是否有提示语

if($("#dataDiv div").length>0){

//清空原有背景颜色

$("#dataDiv div").css("background","");

//给指定的div添加背景颜色

$("#dataDiv div:eq("+count+")").css("background-color","gray");

}

}

});

});

</script>

13ajax之搜索框提示语功能上键功能和键盘鼠标联动和延迟发送请求

13.2 编程题

13.2.1 完成键盘上键选择功能。

13.2.2 完成键盘鼠标联动选择功能

13.2.3 完成延迟发送请求功能

<script type="text/javascript">

//创建计数器

var count=-1;

//声明变量记录定时执行的编号

var id;

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(){

//获取event对象

var eve=window.event;

//获取用户当前点击的键盘简单code值

var code = eve.keyCode;

//判断code值是否符合要求

if(code>=65 && code<=90 || code==8){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//判断请求数据是否为空

if(sd==""){

return;

}

//清除之前的将要发送的请求

window.clearTimeout(id);

//延迟发送请求

id = window.setTimeout(function(){

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

//使用eval方法将数据转成js对象

eval("var data="+data);

//获取提示语div对象

var dataDiv=$("#dataDiv");

//清空原有内容

dataDiv.empty();

//显示隐藏的div

dataDiv.css("display","");

//将提示语数据填充到提示语div中

for(var i=0;i<data.length;i++){

dataDiv.append("<div style='margin:5px'>"+data[i].title+"</div>");

}

//给提示语添加选择效果

$("#dataDiv div").mouseover(function(){

//清空所有提示语div的背景颜色

$("#dataDiv div").css("background-color","");

//将当前选择的div背景颜色变成灰色

$(this).css("background-color","gray");

//键盘和鼠标的联动,将当前鼠标选择的div的角标赋值给计数器

count=$(this).index();

});

//给提示语div添加单击事件

$("#dataDiv div").click(function(){

//将当前选择的提示语填充到搜索框中

$("#search").val($(this).html());

//将提示语div隐藏

$("#dataDiv").css("display","none");

});

});

}, 1000);

}

//判断用户点击的是否是下键

if(code==40){

//判断计数器的值是否超出范围

count=count<$("#dataDiv div").length-1?++count:0;

//判断是否有提示语

if($("#dataDiv div").length>0){

//清空原有背景颜色

$("#dataDiv div").css("background","");

//给指定的div添加背景颜色

$("#dataDiv div:eq("+count+")").css("background-color","gray");

//将选择的提示语填充到搜索框中

$("#search").val($("#dataDiv div:eq("+count+")").html());

}

}

//判断用户点击的是否是上键

if(code==38){

//判断计数器的值是否超出范围

count=count>0?--count:$("#dataDiv div").length-1;

//判断是否有提示语

if($("#dataDiv div").length>0){

//清空原有背景颜色

$("#dataDiv div").css("background","");

//给指定的div添加背景颜色

$("#dataDiv div:eq("+count+")").css("background-color","gray");

//将选择的提示语填充到搜索框中

$("#search").val($("#dataDiv div:eq("+count+")").html());

}

}

});

});

</script>

14ajax之搜索框提示语功能大结局

14.2 编程题

14.2.1 根据视频完整实现提示语功能

<script type="text/javascript">

//创建计数器

var count=-1;

//声明变量记录定时执行的编号

var id;

//页面加载成功完成页面资源的初始化

$(function(){

//给搜索框添加键盘弹起事件

$("#search").keyup(function(event){

//声明正则表达式判断空格

var reg=/^s+$/g;

//获取event对象

var eve=window.event || event;

//获取用户当前点击的键盘简单code值

var code = eve.keyCode;

//判断code值是否符合要求

if(code>=65 && code<=90 || code==8 || code==32){

//获取当前用户搜索框中输入的内容

var sd=$("#search").val();

//判断请求数据是否为空

if(sd=="" || reg.test(sd)){

return;

}

//清除之前的将要发送的请求

window.clearTimeout(id);

//延迟发送请求

id = window.setTimeout(function(){

//发起ajax请求,请求当前用户搜索框数据的提示语信息

$.get("search",{sdata:sd},function(data){

//使用eval方法将数据转成js对象

eval("var data="+data);

//获取提示语div对象

var dataDiv=$("#dataDiv");

//清空原有内容

dataDiv.empty();

//显示隐藏的div

if(data.length>0){

dataDiv.css("display","");

}

//将提示语数据填充到提示语div中

for(var i=0;i<data.length;i++){

dataDiv.append("<div style='margin:5px'>"+data[i].title+"</div>");

}

//给提示语添加选择效果

$("#dataDiv div").mouseover(function(){

//清空所有提示语div的背景颜色

$("#dataDiv div").css("background-color","");

//将当前选择的div背景颜色变成灰色

$(this).css("background-color","gray");

//键盘和鼠标的联动,将当前鼠标选择的div的角标赋值给计数器

count=$(this).index();

});

//给提示语div添加单击事件

$("#dataDiv div").click(function(){

//将当前选择的提示语填充到搜索框中

$("#search").val($(this).html());

//将提示语div隐藏

$("#dataDiv").css("display","none");

});

});

}, 1000);

}

//判断用户点击的是否是下键

if(code==40){

//判断计数器的值是否超出范围

count=count<$("#dataDiv div").length-1?++count:0;

//判断是否有提示语

if($("#dataDiv div").length>0){

//清空原有背景颜色

$("#dataDiv div").css("background","");

//给指定的div添加背景颜色

$("#dataDiv div:eq("+count+")").css("background-color","gray");

//将选择的提示语填充到搜索框中

$("#search").val($("#dataDiv div:eq("+count+")").html());

}

}

//判断用户点击的是否是上键

if(code==38){

//判断计数器的值是否超出范围

count=count>0?--count:$("#dataDiv div").length-1;

//判断是否有提示语

if($("#dataDiv div").length>0){

//清空原有背景颜色

$("#dataDiv div").css("background","");

//给指定的div添加背景颜色

$("#dataDiv div:eq("+count+")").css("background-color","gray");

//将选择的提示语填充到搜索框中

$("#search").val($("#dataDiv div:eq("+count+")").html());

}

}

});

});

</script>

15ajax之整合项目删除功能修改

15.1 编程题

15.2.1 根据视频使用ajax完成jsp和Servlet整合项目的删除功能。

<td><div class="button-group"> <a class="button border-main" href="cateedit.html"><span class="icon-edit"></span> 修改</a> <a class="button border-red" href="javascript:void(0)" οnclick="del('${list.uid }')"><span class="icon-trash-o"></span> 删除</a> </div></td>

<script type="text/javascript">

function del(uid){

if(confirm("您确定要删除吗?")){

$.get("data",{method:"delUserInfo",uid:uid},function(data){

if(eval(data)){

alert("用户删除成功");

window.location.href="data?method=selUserInfo";

}

});

}

}

</script>

e0df453e8740846eba3ec7802c84dffe.png

a64852c61823e81b66297dee4a13f1ab.png

分享/讲解/扩展思考

点名提问从第一节课到最后一节课分别学到了什么,直到同学们把所有的知识点都说出来并且保证无误。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值