诛仙辰皇110级怎么玩:[Python]Web.py下表单的Ajax实时验证
来源:百度文库 编辑:九乡新闻网 时间:2024/04/29 01:25:29
web.py目前并没有对ajax的官方支持. Google Code上只有一个ajaxweb的项目, 可以暂时用一下.
利用jquey的库, 可以自己很轻松的实现这一个功能.
html:
Js:
//validate
var validateUsername = $('#validateUsername');
$('#nickname').keyup(function () {
var t = this;
if (this.value != this.lastValue && this.value != '') {
if (this.timer) clearTimeout(this.timer);
//show checking status
validateUsername.html(
'检查昵称是否存在...'
);
this.timer = setTimeout(function () {
$.ajax({
url: '/user/validate/',
data: 'action=check_nickname&value=' + t.value,
type: 'post',
success: function (j) {
validateUsername.html(j);
}
});
}, 500);
//end timer
this.lastValue = this.value;
}
});
这段代码肯定是在document ready的事件里了. 由于"$"的关系, 需要把js分离出html.
服务端:
(只是初步的处理了一下)
class validate:
def POST(self):
i = web.input()
if i.action == 'check_nickname':
return self.validateName(i.value)
elif i.action == 'check_email':
return self.validateEmail(i.value)
def validateName(self, name):
return web.config.session.query(user).filter_by(nickname=name).count()
def validateEmail(self, e):
if re.match("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$", e) == None:
return False
return web.config.session.query(user).filter_by(email=e).count() == 0
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/d_yang/archive/2008/08/27/2839202.aspx
利用jquey的库, 可以自己很轻松的实现这一个功能.
html:
Js:
//validate
var validateUsername = $('#validateUsername');
$('#nickname').keyup(function () {
var t = this;
if (this.value != this.lastValue && this.value != '') {
if (this.timer) clearTimeout(this.timer);
//show checking status
validateUsername.html(
'检查昵称是否存在...'
);
this.timer = setTimeout(function () {
$.ajax({
url: '/user/validate/',
data: 'action=check_nickname&value=' + t.value,
type: 'post',
success: function (j) {
validateUsername.html(j);
}
});
}, 500);
//end timer
this.lastValue = this.value;
}
});
这段代码肯定是在document ready的事件里了. 由于"$"的关系, 需要把js分离出html.
服务端:
(只是初步的处理了一下)
class validate:
def POST(self):
i = web.input()
if i.action == 'check_nickname':
return self.validateName(i.value)
elif i.action == 'check_email':
return self.validateEmail(i.value)
def validateName(self, name):
return web.config.session.query(user).filter_by(nickname=name).count()
def validateEmail(self, e):
if re.match("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$", e) == None:
return False
return web.config.session.query(user).filter_by(email=e).count() == 0
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/d_yang/archive/2008/08/27/2839202.aspx
[Python]Web.py下表单的Ajax实时验证
[Python]在web.py中处理表单中的多选下拉框
[Python]Code samples(Web.py)
[Python]web.py+gae=我的第一个留言板
[Python]web.py templating system (codename: templetor)
[Python]Getting RESTful with web.py
[Python]web.py连接新浪微博
[Python]python web.py使用flup lighttpd优化过程
Ajax与传统表单提交的区别
[Python]python get,post提交表单
面向 Java 开发人员的 Ajax: 结合 Direct Web Remoting 使用 Ajax
javascript表单验证大全,
[Python]一道笔试题,python的web编程,寻求高手帮忙
[Python]python怎样从表单中提取数据?
掌握 Ajax,第 6 部分: 建立基于 DOM 的 Web 应用程序
可爱的 Python:我的第一个基于 Web的过滤代理
jquery表单验证,jquery.validate全攻略
[原创]Js+Xml打造通用表单验证
Js+Xml打造通用表单验证
面向 Java 开发人员的 Ajax: 使用 Jetty 和 Direct Web Remoting 编写可扩展的 Comet 应用程序
面向 Java 开发人员的 Ajax: 使用 Jetty 和 Direct Web Remoting 编 写可扩展的 Comet 应用程序
Ajax的竞争对手
Ajax的DWR使用
Linux下的实时网络流量监控工具 – iftop