Ajax实现不刷新取最新商品


Posted in Javascript onMarch 01, 2017

话不多说,请看代码:

<?php 
 $conn = mysql_connect('localhost','root','123456') or die('连接失败'); 
 mysql_select_db('ecshop'); 
 mysql_query('set names utf8'); 
 $attr = isset($_GET['attr'])?$_GET['attr']:'is_hot';  //由html 的ajax提交过来 然后根据它来取数据~ 
 $sql = 'select goods_name,goods_id,shop_price from goods where '.$attr.' = 1 limit 0,3'; 
 $rs = mysql_query($sql,$conn); 
 //var_dump($rs); 
 $goods = array(); 
 while($row = mysql_fetch_assoc($rs)){ 
  $goods[] = $row; 
 } 
 //print_r($goods); 
?>
<table border='1'> //ajax 接收的就是 php输出内容 虽然它没echo 但也是输出在网页的内容 所以ajax 能接收~~!!! 
<tr><td>商品ID</td><td>商品名称</td><td>商品价格</td></tr> 
<?php foreach($goods as $v){ ?> 
 <tr> 
  <td><?php echo $v['goods_id'];?></td> 
  <td><?php echo $v['goods_name'];?></td> 
  <td><?php echo $v['shop_price'];?></td> 
 </tr> 
<?php }?> 
</table>

HTML 的内容

<script> 
 var xhr = new XMLHttpRequest(); 
 function top3(attr){ 
  var url = 'goods.php?attr=' + attr; 
  xhr.open('get',url); 
  xhr.onreadystatechange = function (){ 
   if(xhr.readyState ==4){ 
    var dobj = document.getElementsByTagName('div')[0].innerHTML = xhr.responseText; //把从php 接收的内容放入INNERHTML 
   } 
  } 
  xhr.send(); 
 } 
</script> 
</head> 
<body> 
  <input type="button" value="最新商品" onclick="top3('is_new');"> 
  <input type="button" value="热卖商品" onclick="top3('is_hot');"> 
  <input type="button" value="精品商品" onclick="top3('is_best');"> 
  <div id="test"> 
  </div> 
</body>

实例2:根据输入的ID 获取商品信息 并修改

<?php 
$conn = mysql_connect('localhost','root','123456') or die('连接失败'); 
 mysql_select_db('ecshop'); 
 mysql_query('set names utf8'); 
 $id = isset($_GET['id'])?$_GET['id']:1; 
 if($id==''){ 
  $error['num'] = 1; 
  $error['msg']; 
 } 
 $sql = 'select goods_id,goods_name,shop_price,goods_number from goods where goods_id ='.$id; 
 $rs = mysql_query($sql); 
 if(!($goods = mysql_fetch_assoc($rs))){  //获取不到商品就返回false 
  echo '没有该商品!'; 
  exit; 
 } 
 echo json_encode($goods);     //把数组转成一个json 格式~~ 
?>

HTML端的内容

<script> 
 var xhr = new XMLHttpRequest(); 
 function modify(){ 
  var inputs = document.getElementsByTagName('input') 
  var gid = inputs[0].value; 
  var url = 'search.php?id='+ gid;
  xhr.open('get',url); 
  xhr.onreadystatechange = function (){ 
   if(xhr.readyState ==4){ 
    var data = eval('('+ xhr.responseText +')') //把接收到的json 格式数据转成JS的对象! 
    inputs[1].value = data.goods_name; 
    inputs[2].value = data.goods_number; 
    inputs[3].value = data.shop_price; 
   } 
  } 
  xhr.send(null) //经常漏写了~~~不写是发送不了请求的~~一定要写! 
 } 
</script> 
</head> 
<body> 
<h1>商品编辑</h1> 
  商品id:<input type="text" name="goods_id" onfocus="al()" onblur="modify();" /><br /> <span></span> 
  商品名称:<input type="text" name="goods_name" /><br /> 
  商品库存:<input type="text" name="goods_number" /><br /> 
  商品价格:<input type="text" name="shop_price" /><br /> 
  <input type="submit" value="修改" /> 
</body>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jquery 常用操作方法
Jan 28 Javascript
EXTJS记事本 当CompositeField遇上RowEditor
Jul 31 Javascript
TimergliderJS 一个基于jQuery的时间轴插件
Dec 07 Javascript
细说javascript函数从函数的构成开始
Aug 29 Javascript
一个很有趣3D球状标签云兼容IE8
Aug 22 Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
Nov 25 Javascript
【经验总结】编写JavaScript代码时应遵循的14条规律
Jun 20 Javascript
Extjs让combobox写起来简洁又漂亮
Jan 05 Javascript
jQuery ajax动态生成table功能示例
Jun 14 jQuery
详解在HTTPS 项目中使用百度地图 API
Apr 26 Javascript
详解在Angular4中使用ng2-baidu-map的方法
Jun 19 Javascript
vue.js实现双击放大预览功能
Jun 23 Javascript
Angular1.x复杂指令实例详解
Mar 01 #Javascript
JS中使用 after 伪类清除浮动实例
Mar 01 #Javascript
Angular1.x自定义指令实例详解
Mar 01 #Javascript
轻松学习Javascript闭包
Mar 01 #Javascript
js图片延迟加载(Lazyload)三种实现方式
Mar 01 #Javascript
node.js实现回调的方法示例
Mar 01 #Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
Mar 01 #Javascript
You might like
比特率,大家看看这个就不用收音机音质去比MP3音质了
2021/03/01 无线电
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
php file_get_contents取文件中数组元素的方法
2017/04/01 PHP
老生常谈PHP面向对象之注册表模式
2017/05/26 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
2019/09/03 PHP
利用Jquery实现可多选的下拉框
2014/02/21 Javascript
Jquery 点击按钮自动高亮实现原理及代码
2014/04/25 Javascript
jquery实现通用版鼠标经过淡入淡出效果
2014/06/15 Javascript
一个JavaScript去除字符串末尾的空白实例代码
2014/09/22 Javascript
jquery+ajax实现跨域请求的方法
2015/01/20 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
2015/10/01 Javascript
基于JavaScript代码实现微信扫一扫下载APP
2015/12/30 Javascript
AngularJS用户选择器指令实例分析
2016/11/04 Javascript
JS作用域闭包、预解释和this关键字综合实例解析
2016/12/16 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
基于JavaScript实现弹幕特效
2020/08/27 Javascript
vue将对象新增的属性添加到检测序列的方法
2018/02/24 Javascript
小程序兼容安卓和IOS数据处理问题及坑
2018/09/18 Javascript
js实现简易计算器功能
2019/10/18 Javascript
JavaScript 严格模式(use strict)用法实例分析
2020/03/04 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
[06:35]2014DOTA2国际邀请赛 老男孩梦圆西雅图中国军团世界最强
2014/07/22 DOTA
简单上手Python中装饰器的使用
2015/07/12 Python
python3 实现的人人影视网站自动签到
2016/06/19 Python
Python Pillow Image Invert
2019/01/22 Python
简单了解Python matplotlib线的属性
2019/06/29 Python
python SQLAlchemy 中的Engine详解
2019/07/04 Python
Python paramiko模块使用解析(实现ssh)
2019/08/30 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
python给视频添加背景音乐并改变音量的具体方法
2020/07/19 Python
通过实例解析python and和or使用方法
2020/11/14 Python
美国宠物美容和宠物用品购物网站:Cherrybrook
2018/12/07 全球购物
出生证明公证书
2014/04/09 职场文书
酒店采购员岗位职责
2015/04/03 职场文书
狂人日记读书笔记
2015/06/30 职场文书
教你使用Pandas直接核算Excel中快递费用
2021/05/12 Python