UCHOME的AJAX分享
最近match001.com项目做一个发送电子喜帖的功能,发现QQ油箱明信片功能差不多。于是乎构思做成那个样子。
有几点需要实现的:
背景图片、结婚相片的加载。
N多的事件绑定
跟相册数据绑定,选择相册列出所有相片,并且相片分页。所有的都AJAX实现
初始化一个DIV用来控制上层图片位置移动,根据不同背景图片,初始化不不同的控制DIV。
JS收集背景图片与相片的相关信息以及他们的位置数据,AJAX到后台处理。根据不同的方式处理,比如 view预览,保存发送等等。
这里针对第三点说说,AJAX得到用户相册数据。
这里需要用到AJAX和数据分页,UCHOME里有两个非常棒的函数。ajaxget()和muti()。
ajaxget(url, showid, waitid);参数url为请求路径(必选参数),showid为AJAX请求后返回内容的显示ID(必选参数),waitid为等待请求时候显示loading...的ID(可选,没这个参数的话默认将showid作为waitid)。
uchome的使用AJAX时候有一个注意地方,刚不了解朋友可能尝试使用如下JS代码处理AJAX:
var x = new('XML', '');
x.get(url, function(s){
//some code;
});
处理返回一个XML或者HTML格式数据,echo 出来后,再用自己用JS控制显示数据。这里要说的是UCHOME经常会碰到一个XML错误的位置。。什么的错误信息,之前我也是这样处理,搞了好久,后来Google搜一把,原来不能简单后台echo输出。后来想到UCHOME李的template函数,于是乎做一个模板,数据PHP后台得到后不做任何处理,跟其他页面一样,存于变量里,在模板里调用就是。至于分页,也一样,UCHOME里multi函数返回的就是一个分页链接。也在模板里处理显示。而前段JS只需要这样:
ajaxget(url, showid);
具体PHP代码如下:
$albumid = ($_GET[albumid]) ? $_GET['albumid'] : '';
if($albumid == '') exit('error');
$perpage = 8; //每页要显示的条数
$page = empty($_GET['page']) ? 1 : intval($_GET['page']);
if($page<1) $page=1;
$start = ($page-1)*$perpage;
ckstart($start, $perpage);
$wheresql = " albumid='$albumid' AND uid='$space[uid]'";
$count = $_SGLOBAL['db']->result($_SGLOBAL['db']-
相关文档:
1、源代码
这个AJAX连接池害我我弄了很久,终于,让它兼容IE6/7/8、FireFox、Opera、Google Chrome这四类浏览器了。
/**
* AJAX 连接池
* AJAXConnectionPool Build in 2009.7.10
* @author CodingMouse
* @version 1.0
*/
var AJAXConnectionPool = function() {
// 任务队列
var taskQ ......
很多朋友问我如何实现无刷新上传图片,这里小黑给大家找了一篇关于无刷新实现图片上传的文章,希望对大家有帮助.
本文客服端使用的是ajax.net异步上传文件
1.在
protected void Page_Load(object sender, EventArgs e)
{
Ajax.Utilit ......
在Ajax url传参时出现中文乱码的情况
例1: xmlHttp.open("GET","Engine.aspx?Action=getmainsort&Type=2&Parent="+escape("中文")+"&Stochastic=" + Math.random(),true);
但是这个只能普通的<a href=''.有效果。如果是ajax传值的话还是不行的...有人提出:要 ......
用struts2+jquery+json+hibernate+ajax做了一个登陆的demo。
1.jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/x ......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>简单的应用XMLHt ......