`
hudeyong926
  • 浏览: 2017173 次
  • 来自: 武汉
社区版块
存档分类
最新评论

YII AJAX registerScript

阅读更多

1.YII封装的CHtml::ajaxLink,QuoteController.php

<?php
class QuoteController extends Controller
{
	private $quotes = array(
		array('Walking on water and developing software from a specification are easy if both are frozen.', 'Edward V Berard'),
		array('It always takes longer than you expect, even when you take into account Hofstadter&rsquo;s Law.', 'Hofstadter&rsquo;sLaw'),
		array('Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.','Rick Osborn'),
		array('I have always wished for my computer to be as easy to use as my telephone; my wish has come true because I can no longer figure out how to use my telephone.', 'Bjarne Stroustrup'),
		array('Java is to JavaScript what Car is to Carpet.', 'Chris Heilmann'),
	);
	private function getRandomQuote()
	{
		return $this->quotes[array_rand($this->quotes, 1)];
	}
	function actionIndex()
	{
		$this->render('index', array(
		'quote' => $this->getRandomQuote()
		));
	}
	function actionGetQuote()
	{
		$this->renderPartial('_quote', array(
		'quote' => $this->getRandomQuote(),
		));
	}
}

view/index.php

<h2>Quote of the day</h2>
<div id="quote-of-the-day">
&ldquo;<?php echo $quote[0]?>&rdquo;, <?php echo $quote[1]?>
</div>
<?php Yii::app()->clientScript->registerCoreScript('jquery'); ?>
<?php echo CHtml::ajaxLink('Next quote', array('getQuote'),
array('update' => '#quote-of-the-day'))?>

 ajaxLink($text,$url ,$ajaxOptions=array(),$htmlOptions=array())

$text 链接内容

以下是调试.也可以用常用的jQuery.ajax

<?php echo CHtml::ajaxLink('Next quote', array('getQuote'),
array('success' => 'js:function(data){
alert(data);
}'))?>

 

2.将php数据转化成javascript数据

protected/config/main.php:

'params'=>array(
	// this is used in contact page
	'adminEmail'=>'webmaster@example.com',
	'alert' => array(
		'enabled' => true,
		'message' => 'Hello there!',
	),
),

protected/controllers/AlertController.php

<?php
class AlertController extends Controller
{
	function actionIndex()
	{
		$config = CJavaScript::encode(Yii::app()->params->toArray());
		//$config:{'adminEmail':'webmaster@example.com','alert':{'enabled':true,'message':'Hello there!'}}
		Yii::app()->clientScript->registerScript('appConfig', "var config = ".$config.";",CClientScript::POS_HEAD);
		$this->render('index');
	}
}

registerScript第二个参数是显示js代码。

<?php
Yii::app()->clientScript->registerScript('search', "
$('.search-button').click(function(){
	$('.search-form').toggle();
	return false;
});
$('.search-form form').submit(function(){
	$.fn.yiiGridView.update('project-grid', {
		data: $(this).serialize()
	});
	return false;
});
");
?>

protected/views/alert/index.php

<script>
if(config && config.alert && config.alert.enabled &&
config.alert.message){
alert(config.alert.message);
}
</script>

CJSON::encode()=CJavaScript::encode   生成json格式
CJSON::decode()

 

 

分享到:
评论

相关推荐

    yii ajax demo

    yii ajax demo yii ajax demo

    yii ajax应用

    yii ajax 原理 本文档为您详细解释它是如何工作的.

    yii2-ajaxcrud, 用于yii2的单一页面Ajax管理的Gii模板.zip

    yii2-ajaxcrud, 用于yii2的单一页面Ajax管理的Gii模板 yii2-ajaxcrud 用于yii2的单一页面Ajax管理的Gii模板 特性使用Ajax创建。读取。更新。删除页面批量删除 suportPjax小部件 suport导出函数( pdf,html,文本,cs

    Ajax-yii2-ajax-sort.zip

    Ajax-yii2-ajax-sort.zip,yii2可排序列表视图ajax拖放,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况...

    yii2-ajaxcrud-assets:yii2-ajaxcrud扩展的资产捆绑包

    yii2-ajaxcrud-assets 资产捆绑包用于

    Yii+upload实现AJAX上传图片的方法

    主要介绍了Yii+upload实现AJAX上传图片的方法,实例分析了Yii结合upload插件实现ajax上传的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

    Yii使用ajax验证显示错误messagebox的解决方法

    本文实例讲述了Yii使用ajax验证显示错误messagebox的解决方法。分享给大家供大家参考。具体方法如下: yii 自带了ajax 表单验证 这个可能有些朋友不知道了,但我今天在使用yii 自带的ajax 表单验证 时碰到一些问题,...

    yii2-ajaxcrud:yii2-ajaxcrud personalizado

    yii2-ajaxcrud

    yii2-scroll-pager, 用于 Yii2 ListView小部件的无限AJAX滚动.zip

    yii2-scroll-pager, 用于 Yii2 ListView小部件的无限AJAX滚动 Yii2滚动寻呼机使用AJAX将常规分页页面转换为无限滚动页。Y2SP使用 Pagination 对象,它指定了完整的页面数目和当前页码。使用 JQuery无限Ajax滚动插件...

    Ajax-yii2-ajaxform.zip

    Ajax-yii2-ajaxform.zip,通过ajax提交activeform,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况下更改...

    Ajax-yii2-widgets.zip

    Ajax-yii2-widgets.zip,yii2框架的小部件集合,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不重新加载网页的情况下更改。

    Ajax-yii2-ajax-submit-button.zip

    Ajax-yii2-ajax-submit-button.zip,yii 1为yii 2提供的旧的好ajax提交按钮,ajax代表异步javascript和xml。它是多种web技术的集合,包括html、css、json、xml和javascript。它用于创建动态网页,其中网页的小部分在不...

    yii框架yii框架yii框架yii框架yii框架

    很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架很好用yii框架

    Yii实现用户注册登录、ajax、图片上传、modules编程基础例程(内置完整工程及使用说明)

    使用Yii搭建工程,实现了用户注册登陆,图片上传,并使用ajax实现删除操作,使用Gii生成modules并实现模块编程,内含完整代码及工程使用操作以及sql文件

    Yii2表单事件之Ajax提交实现方法

    主要介绍了Yii2表单事件之Ajax提交实现方法,结合实例形式分析了Yii2框架中ajax提交的具体实现技巧,需要的朋友可以参考下

    ajax翻页效果模仿yii框架自己写的

    ajax分页&lt;/title&gt; [removed][removed] [removed] function loadXMLDoc($url) { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); ...

    Yii2基于Ajax自动获取表单数据的方法

    本文实例讲述了Yii2基于Ajax自动获取表单数据的方法。分享给大家供大家参考,具体如下: 这里有两张表,表结构如下,locations表存放的省份和邮编等信息,两张表的model和curd均使用gii生成 yii2advanced.customers...

    Yii2.0打造京东商城平台PHP电商实战Yii2.0视频教程

    Yii2.0级基于Yii1.X完全重写的,不仅是小版本升级的升级。所以想要系统学习Yii2.0这个框架这套教程可以从实战项目带你入手。不错的学习YII框架的基础课程,电商系统的结构完整、框架资源太大,传百度网盘了,链接在...

Global site tag (gtag.js) - Google Analytics