Maison  >  Article  >  développement back-end  >  辛星浅析一次ajax的实现过程

辛星浅析一次ajax的实现过程

WBOY
WBOYoriginal
2016-08-08 09:22:591022parcourir

     说到ajax,那绝对是一个老生常谈的话题,近些年ajax技术的使用颇为盛行。下面我们就以jQuery为例来从一个真实的项目中看一下ajax的实例。

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

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

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

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

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

   然后就是这个deleteOne方法的代码,注意这里我们导入了jQuery库,当然还有一些其他的库,这里只写其中比较重要的部分代码:

<script type="text/javascript">
	var base_url=&#39;<?php echo base_url();?>&#39;;
	$(function(){
		delete
			var t=&#39;3000&#39;;if(isNullOrEmpty(time)){t=&#39;3000&#39;;}else{t=time;}
			var icon=&#39;<?php echo base_url();?>assets/dialog/icons/&#39;;
			showDialog(&#39;确定要删除?&#39;,function(){
				var url=&#39;<?=@$site_url.&#39;/&#39;.@$module.&#39;/delete&#39;;?>&#39;;
				var data={&#39;Id&#39;:id}
				$.ajax({
			        //async: true,//是否为异步请求
			        type: "POST",//GET  POST
			        url: url,
			        //data: data,
			        data:&#39;Id=&#39;+id,
			        //dataType: "json",
			        //beforeSend: function(XMLHttpRequest, textStatus){},
			        success: function(data){//,textStatus
				        //console.log(data);
				        var msg=data.message;
				        //if(data.status){refreshGrid();i=&#39;succeed.png&#39;;}else{i=&#39;info.png&#39;;}
				        showDialog(msg);
				        window.location.reload();
			        }
			        //complete: function(XMLHttpRequest, textStatus){},
			        /*error: function(XMLHttpRequest, textStatus, errorThrown){
			        	var msg=("Error");i=&#39;error.png&#39;;
			        	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的实现

以上就介绍了辛星浅析一次ajax的实现过程,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:phpStorm8注册码Article suivant:一个过滤函数