Heim  >  Artikel  >  Backend-Entwicklung  >  辛星浅析一次ajax的实现过程

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

WBOY
WBOYOriginal
2016-08-08 09:22:591022Durchsuche

     说到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教程有兴趣的朋友有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:phpStorm8注册码Nächster Artikel:一个过滤函数