view中

<?php
$cs=Yii::app()->clientScript;
$cs->registerScriptFile('http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js');
?> <!-- ▼显示提示信息▼ -->
<?php if(Yii::app()->user->hasFlash('success')){ ?>
<div class="flash-success">
<?php echo Yii::app()->user->getFlash('success'); ?>
</div>
<?php } ?> <?php if(Yii::app()->user->hasFlash('failed')){ ?>
<div class="flash-error">
<?php echo Yii::app()->user->getFlash('failed'); ?>
</div>
<?php } ?>
<!-- ▲显示提示信息▲ --> <div class="row">
<?php echo $form->textField($model,'cnt',array('size'=>'6', 'maxlength'=>'6'));?>
<?php echo CHtml::ajaxButton("随机生成邮件地址",
//CHtml::normalizeUrl(array('mail/makeMailAddress','count'=>'1')), // GET方式进行请求
CHtml::normalizeUrl(array('mail/makeMailAddress')), // GET方式进行请求
array(
'data' => array('cnt'=>'js: $("#MailForm_cnt").val()'), // 以GET方式将页面的值传递给后台
'beforeSend'=>'function(){}',
'update'=>'#MailForm_to', // 更新对象
'success'=>'function(data){
$("#MailForm_to").val(data);
}', // 将后台的返回值用JS显示在页面上
)); ?>
</div>

Controller 中

    public function actionMakeMailAddress(){
if(Yii::app()->request->isAjaxRequest){
if (isset($_GET["cnt"])){
$cnt = is_numeric($_GET["cnt"]) ? $_GET["cnt"] : "0";
} else {
$cnt = 1000 ;
} $data = "";
for($i = 0 ; $i < $cnt ; $i++) {
$data .= rand(10000000, 99999999)."@qq.com \n" ;
}
echo $data;
} else {
Yii::app()->user->setFlash("failed", "Request Error \n");
$this->refresh();
}
}

From: http://shoukii0721.iteye.com/blog/1576381

其它参考链接:

http://www.yiichina.com/api/CHtml#ajaxButton-detail

http://www.yiichina.com/api/CHtml#ajax-detail

http://api.jquery.com/jQuery.ajax/#options

http://shoukii0721.iteye.com/blog/1576381

http://blog.csdn.net/dreamzml/article/details/8642229

以及zii.widgets.grid.CGridView删除按钮JS:

jQuery(document).on('click','#user-grid a.delete',function() {
if(!confirm('确定要删除这条数据吗?')) return false;
var th = this,
afterDelete = function(){};
jQuery('#user-grid').yiiGridView('update', {
type: 'POST',
url: jQuery(this).attr('href'),
success: function(data) {
jQuery('#user-grid').yiiGridView('update');
afterDelete(th, true, data);
},
error: function(XHR) {
return afterDelete(th, false, XHR);
}
});
return false;
});

其HTML:

<tr class="odd">
<td>1</td><td>demo</td><td></td><td></td><td>0</td><td class="button-column"><a title="查看" href="/index.php/user/1"><img src="/assets/2b2efa90/gridview/view.png" alt="查看" /></a> <a title="修改" href="/index.php/user/update/1"><img src="/assets/2b2efa90/gridview/update.png" alt="更新" /></a> <a class="delete" title="删除" href="/index.php/user/delete/1"><img src="/assets/2b2efa90/gridview/delete.png" alt="删除" /></a></td><td class="button-column"><a style="cursor:pointer;" class="add_status" title="展示" href="/index.php/user/status/1?status=1">展示</a> </td></tr>

收藏功能、顶、踩 等可参考开源中国上的相关JS:

http://my.oschina.net/u/1403186/blog/179641

http://www.oschina.net/code/snippet_197014_17646

Yii中Ajax的使用,如收藏功能的更多相关文章

  1. Ajax实现搜索栏中输入时的自动提示功能

    使用 jQuery(Ajax)/PHP/MySQL实现自动完成功能 JavaScript代码: <script src="jquery-1.2.1.pack.js" type ...

  2. Javascript and AJAX with Yii(在yii 中使用 javascript 和ajax)

    英文原文:http://www.yiiframework.com/wiki/394/javascript-and-ajax-with-yii /*** http://www.yiiframework. ...

  3. 2018.2.28 PHP中使用jQuery+Ajax实现分页查询多功能如何操作

    PHP中使用jQuery+Ajax实现分页查询多功能如何操作 1.首先做主页Ajax_pag.php 代码如下 <!DOCTYPE html> <html> <head& ...

  4. mxonline实战9,我要学习功能块,机构详情展示,收藏功能

    对应github地址:第9天   一. 实现我要学习功能

  5. 18、Django实战第18天:课程机构收藏功能

    这里点击"收藏"也是ajax异步操作,我在operation.model.py中创建了一个用户收藏表,其中fav_id字段,如果我们收藏的是课程,那就是课程id,如果收藏的是课程机 ...

  6. JQuery中ajax的相关方法总结

    前提条件 话说是jquery中的ajax方法,那么前提条件当然是引入jquery啦. <script src="http://libs.baidu.com/jquery/1.9.0/j ...

  7. jQuery中ajax的4种常用请求方式

    jQuery中ajax的4种常用请求方式: 1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数 ...

  8. php中ajax跨域请求---小记

    php中ajax跨域请求---小记   前端时间,遇到的一个问题,情况大约是这样: 原来的写法: 前端js文件中: $.ajax({ type:'get', url:'http://wan.xxx.c ...

  9. jquery中ajax的使用

    Java软件开发中,后台中我们可以通过各种框架,像SSH等进行对代码的封装,方便我们对Java代码的编写,例如,Struts,SpringMVC对从前台到action的流程进行封装控制,使我们只需要进 ...

随机推荐

  1. Linux网络应用编程之交换机概述

    Packet Tracer入门 一,交换机概况 交换机工作在OSI(开放系统互联参考模型)数据链路层,接入交换机的任意两个网络节点(网络设备)都是独享带宽的. 二,交换机原理 交换机拥有一条很高带宽的 ...

  2. linux强大IDE——Geany配置说明

    今天开始用Ubuntu了(主要是为了防止自己在windows下不自觉的打游戏之类的)   刚开始用的很不习惯  找不到合适的编译器(DEV c++什么时候才能出Linux的啊)  先后下了codeli ...

  3. linux curl命令验证服务器断点续传支持

    有个同事说,发现现在对外下载安装包的服务器不支持断点续传,我听了一阵纳闷,lighttpd server对于静态文件应该默认支持断点续传的,登机器查看lighttpd配置文件发现 对断点续传的支持被禁 ...

  4. FastCgi与PHP-fpm关系[转] 读完本文瞬间明朗了很多

    刚开始对这个问题我也挺纠结的,看了<HTTP权威指南>后,感觉清晰了不少. 首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者. ...

  5. ubuntu远程登陆windows

    首先安装rdesktop : apt-get install rdesktop.p 程序安装完后,在终端命令行中输入:$ rdesktop -g 1024x768 -d 24 ip,就进入了windo ...

  6. Python全栈开发之MySQL(三)视图,存储过程触发器,函数,事务,索引

    一:视图 1:什么是视图? 视图是指存储在数据库中的查询的SQL语句,具有简单.安全.逻辑数据独立性的作用及视点集中简化操作定制数据安全性的优点.视图包含一系列带有名称的列和行数据.但是,视图并不在数 ...

  7. Leetcode 解题 Longest Substring without repeating charcater python

    原题: Given a string, find the length of the longest substring without repeating character For example ...

  8. Razor引擎总结

    1.显示格式化小数:@(string.Format("{0:0.00}",ViewData["TradeAmount"].ToNullString()))

  9. Effective Java之并发

    并发本身有两个概念:1.互斥性:2.可见性: 先来说一下可见性,就是让共享的变量在进程间可以及时获得最新版本的数据:这里比较简单的方式是为可能被并发修改的全局变量添加上volatile关键字:vola ...

  10. 关于django Models的个人理解和related_name的使用

    作为一个新人(刚刚大学还没有毕业就出来实习,可以说是真的什么都不知到,什么都要重新学,但是这样真的可以锻炼自己的意志力和能力).现在在公 司是前端和后端一起坐,所以要学的东西是真的多的让人想不到.在学 ...