ajax查询数据的举例
1.根据下拉框的值异步查询信息
HTML代码如下:
<script>
$(function(){ //页面载入时执行
$("#key").change(function(){ //当下拉框中值发生变化时执行
var cc1 = $('#key').val(); //得到下拉菜单的选中项的value值
if (cc1!=){ //如果下拉框中内容不为空
//发送记录id和sid 两个参数到getweb.asp,math.random()避免缓存
$.get("10-6.php",{id:cc1,sid:Math.random()},
function(data){
$("#disp").html(data);
});
}
else
$("#disp").html("还没选择!");
});
})
</script> <?
include('conn.php');
$result=$conn->query("Select * From link Order By id Desc");
?>
请选择网站:
<select id="key">
<option value="">==请选择==</option>
<? while($row=$result->fetch_assoc()){ ?> <!--填充下拉框中的数据-->
<option value="<?=$row['id'] ?>"><?=$row['name'] ?></option>
<?
}
?>
</select> <ul id="disp"><b>网站信息...</b></ul>
10-6.php
<?
header("Content-type: text/html; charset=gb2312");
include('conn.php');
$id=$_GET["id"]; //获得$.get()发送来的id
$sql="Select * From link Where id=$id";
$result=$conn->query($sql);
if($result->num_rows>){
while($row=$result->fetch_assoc()){
echo "<li>编号:".$row['id']."</li>";
echo "<li>网站名:".$row['name']." </li>";
echo "<li>URL地址:".$row['URL']." </li>";
echo "<li>介绍:".$row['intro']." </li>";
}
}
else echo "没有搜索到信息";
?>
2.制作级联下拉框
例如省会城市的选择
$(function(){
$("#szSheng").change(function(){ //左边列表框值改变时触发
$.getJSON("10-8.php",{index: $(this).val()}, //发送列表框值给10-8.asp
function(data){ //接收10-8.asp返回的数据
var city=""; //根据返回的JSON数据,创建<option>项
for (var i = ; i < data.length; i++) {
city += '<option value="' + data[i].ID + '">' + data[i].shi + '</option>';
};
$("#szShi").html(city); //在第二个下拉菜单中显示数据
});
});
$("#szSheng").change(); //让页面第一次显示的时候也有数据
})
</script>
所在城市:<select id="szSheng">
<? include('conn.php');
$result=$conn->query("select * from province order by shengorder");
//var_dump($result);
while($row=$result->fetch_assoc()){ ?> <!--在左边列表框中加载所有省的信息-->
<option value="<?=$row["id"] ?>" ><?=trim($row["shengname"]) ?></option>
<? } ?>
</select>
<select id="szShi"></select> <!--右边列表框,用于加载市的信息-->
10-8.php 数据格式
<?
header("Content-type: text/html; charset=gb2312");
include('conn.php');
$shengid=$_GET["index"]; //获得$.getJSON发送来的数据
$sql="select * from city where Shengid=$shengid order by shiorder"; $city= "["; //$city用来保存JSON格式字符串
$i=;
$result=$conn->query($sql);
while($row=$result->fetch_assoc()){ //循环输出JSON格式数据
$city = $city."{ID:".$row["shiorder"].", shi: '".$row["shiname"]."'}"; if($result->num_rows!=++$i) $city = $city.','; //如果不是最后一条记录
} $city = $city."]";
echo $city;
?>
3.异步方式检测用户名是否可以注册
在页面失去焦点 的时候,就检测该用户名是否可以注册。 如果用户输入的用户名和密码合法,则在不刷新页面的情况下完成用户注册,也就是单击“注册”按钮的时候将用户名和密码异步发送给服务器并插入到admin表中,然后返回注册成功的信息。
HTML代码
<script src="jquery.min.js"></script>
<script>
$(function(){ //在页面载入时加载
$("#user").blur(function(){ //在文本框失去焦点时检测
var user=$("#user").val();
if (user != ""){
$.get('10-9-2.php', {username:user,n:Math.random()}, function (data){
if (data==){ //返回1表示用户名没有注册
$("#prompt").html("<font color=#0000ff>可以注册</font>");
}
else {
$("#user").focus().select();
$("#prompt").html("<font color=#ff0000>此用户名已经注册</font>");
}
});
}else $("#prompt").html("请输入用户名");
});
$("#reg").click(function(){ //单击注册按钮时
var user=$("#user").val();
var password=$("#pwd").val();
if (user != "" && password !=""){
$.get('10-9-2.php', {username: user,password:password,act:"login"},
function (data){
$("#user").val(""); $("#pwd").val(""); //清空文本框
$("#show").html(data); });}
else $("#prompt").html("请输入用户名和密码"); });
})
</script>
<form>
<table border= cellpadding= cellspacing= width="">
<tr>
<td width="">用户名</td><!-- -->
<td width=""><input type="text" id="user" size=""></td>
<td width=""><div id="prompt">请输入用户名</div></td>
</tr>
<tr>
<td>密码</td>
<td><input type="text" id="pwd" size=""></td>
<td></td>
</tr>
<tr>
<td></td>
<td><input type="button" value="注册" id="reg"></td>
<td id="show"></td>
</tr>
</table>
</form>
10-9-2.php
<? header("Content-type: text/html; charset=gb2312");
require('conn.php');
$username=$_GET["username"]; //获得10-9.html发送来的数据
$password=$_GET["password"];
$act=$_GET["act"];
if($act=="login"){ //处理单击“注册”按钮的代码
$sql="insert into admin(`user`,`password`) values('$username','$password')";
if($conn->query($sql))
echo "欢迎 $username , 注册成功";
else echo '注册失败,原因:'. $conn->errno. $conn->error;
die();
}
$sql="select * from admin where user='$username'"; //处理检测用户名的代码
$result=$conn->query($sql);
if($result->num_rows==)
echo ; //如果没有记录则输出1,表示可以注册
?>
ajax查询数据的举例的更多相关文章
- 8.ajax查询数据
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- ajax查询数据返回结果不变
在使用流水号的时候,Google浏览器没有问题,但是IE有缓存,如果ajax请求的参数没有变化,那么就会返回缓存里的数据 解决方法:ajax请求的时候传值的参数设置一个时间戳就OK了(没什么特别意义, ...
- jquery通过ajax查询数据动态添加到select
function addSelectData() { //select的id为selectId //清空select中的数据 $("#selectId").empty(); $.a ...
- 查询数据过多页面反应慢引入缓存解决方案(Redis、H2)
问题:原系统查询接口不支持分页也不可能加入分页支持,导致Ajax查询数据过多,返回数据达到2W多条记录时响应已经极慢,查询功能不要求数据实时性,页面反应速度极慢.体验不好:经排查是由于数据量过大导 ...
- ASP.NET 前端Ajax获取数据并刷新
控制器中↓ /// <summary> /// 根据ID来进行展示数据 /// </summary> /// <param name="instru_id&qu ...
- 5月17 利用AJAX查询数据库
利用AJAX查询数据 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...
- vue使用element Transfer 穿梭框实现ajax请求数据和自定义查询
vue使用element Transfer 穿梭框实现ajax请求数据和自定义查询 基于element Transfer http://element-cn.eleme.io/#/zh-CN/comp ...
- 通过ajax GET方式查询数据,Django序列化objects
点击“查找2”按钮,通过ajax GET方式进行查询数据,这样页面不需要整体刷新,之后清空tbody数据,将查询结果重新附加到tbody 前端html: <div class="box ...
- mongodb基础系列——数据库查询数据返回前台JSP(二)
上篇博客论述了,数据库查询数据返回前台JSP.博客中主要使用Ajax调用来显示JSON串,来获取其中某一个字段,赋给界面中的某一个控件. 那这篇博客中,我们讲解,把后台List传递JSP展示. Lis ...
随机推荐
- G - Reduced ID Numbers(第二季水)
Description T. Chur teaches various groups of students at university U. Every U-student has a unique ...
- 初学swift笔记 结构体(八)
import Foundation /* 和类很相似 结构体 -> 封装 属性.方法 结构体是值类型 */ //定义一个LSQ类型的结构体 关键字struct struct LSQ { var ...
- DataSet 中的数据排序 及 DataRow装成DataTable
1.DataSet 中的数据排序 DataSet ds = new DataSet(); // 获取当前排口的数据 ds = _xiaobill.GetHistoryData(yinZiBianm, ...
- python学习之day13
目录 JavaScript Dom jQuery JavaScript JavaScript 是世界上最流行的编程语言. 这门语言可用于 HTML 和 web,更可广泛用于服务器.PC.笔记本电脑 ...
- Js节点属性与方法
属性: Attributes 存储节点的属性列表(只读) childNodes 存储节点的子节点列表(只读) dataType 返回此节点的数据类型 Definition 以D ...
- OC基础7:变量和数据类型
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.有时候初始化需要让对象带有初始值,那么 ...
- Dollar Dayz(大数母函数,高低位存取)
Dollar Dayz Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5655 Accepted: 2125 Descr ...
- Mac 安装Qt5.1编译出现的错误解决
错误提示: :-1: 错误:Xcode is not installed in /Volumes/Xcode/Xcode.app/Contents/Developer. Please use xcod ...
- 【ThinkPHP学习】ThinkPHP自己主动转义存储富文本编辑器内容导致读取出错
RT. ThinkPHP的conf文件里的Convention.php有一个配置选项 'DEFAULT_FILTER' => 'htmlspecialchars', // 默认參数过滤方法 用于 ...
- RCTF Welpwn
Welpwn 很久以前的了,现在整理一下 题目的漏洞很明显,就是一个栈溢出.程序打开了NX,却没有给libc.重点是,在向栈上拷贝数据时,如果输入中含有'\x00',会被截断,对利用漏洞造成了困难.虽 ...