zoukankan      html  css  js  c++  java
  • 辛星浅析一次ajax的实现过程

         说到ajax,那绝对是一个老生常谈的话题,近些年ajax技术的使用颇为盛行。

    以下我们就以jQuery为例来从一个真实的项目中看一下ajax的实例。

        首先是前端页面,这个页面我们使用的是bootstrap和自己的若干技术,最后我们有一个button。它的源码例如以下:

    $deal .= '<a href="javascript:void(0);" class="btn btn-danger btn-mini" onclick="deleteOne('.$Id.');">删除</a>';

    相信有js基础的朋友们读懂这个代码不是问题。这里须要说明几点:

    1.它使用了bootstrap。因此我们会看到诸如btn  btn-danger  btn-mini这些东西,

    2.它调用了一个deleteOne()函数,而该函数中的參数$Id是PHP中的变量。


       然后就是这个deleteOne方法的代码,注意这里我们导入了jQuery库。当然另一些其它的库。这里仅仅写当中比較重要的部分代码:

    <script type="text/javascript">
    	var base_url='<?php echo base_url();?>';
    	$(function(){
    		deleteOne=function(id,time){
    			var t='3000';if(isNullOrEmpty(time)){t='3000';}else{t=time;}
    			var icon='<?php echo base_url();?

    >assets/dialog/icons/'; showDialog('确定要删除?',function(){ var url='<?=@$site_url.'/'.@$module.'/delete';?>'; var data={'Id':id} $.ajax({ //async: true,//是否为异步请求 type: "POST",//GET POST url: url, //data: data, data:'Id='+id, //dataType: "json", //beforeSend: function(XMLHttpRequest, textStatus){}, success: function(data){//,textStatus //console.log(data); var msg=data.message; //if(data.status){refreshGrid();i='succeed.png';}else{i='info.png';} showDialog(msg); window.location.reload(); } //complete: function(XMLHttpRequest, textStatus){}, /*error: function(XMLHttpRequest, textStatus, errorThrown){ var msg=("Error");i='error.png'; showDialog(msg); }*/ }); }); } }); </script>


        到这里。我们还差一步就完毕了。就是delete方法,以下是它的实现过程:

    public function delete(){
    		if (! isPost ()) {
    			$msg='输入的链接不对!

    '; showErrorMsg($msg); } $action='delete'; $module=$this->module; $arrLang=lang('common_'.$module); $title=$arrLang[$action]; $arr_post=$this->input->post(); $arr_post=setForm($arr_post); $Id=@$arr_post['Id']; $status=FALSE; $logType=0; if(!isNullOrEmpty($Id)){ $del_where=array('ID'=>$Id); $this->common_model->table='mx_changci'; $result = $this->common_model->delete( $del_where ); if ($result) { $status = TRUE; $message = $title.'成功!

    '; } else { $status = FALSE; $message = $title.'失败!'; } }else{ $status=FALSE; $message= $title.'出错!

    '; $logType=3; } $jsonData['status']=$status; $jsonData['message']=$message; header("Content-type: application/json"); echo json_encode($jsonData); }


    这就是我近期參与的项目中的一个简单的ajax的实现

  • 相关阅读:
    BZOJ 3041 水叮当的舞步
    Codevs 1744 格子染色==BZOJ 1296 粉刷匠
    洛谷P1077 摆花
    1256 打鼹鼠
    mybatis--面向接口编程
    柳峰微信公众平台开发教程企业号改动篇(企业菜单篇)
    com关于引用计数
    oracle用户管理实例
    用 JSQMessagesViewController 创建一个 iOS 聊天 App
    循环链表设计与API实现
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/7190475.html
Copyright © 2011-2022 走看看