浏览模式: 标准 | 列表分类:Javascript
Submitted by gouki on 2008, April 24, 12:01 AM
升级记录
2.0
这次又做了一次比较大的调整:增加了FunctionValidator这种校验方式,现在你可以调用外部函数了;调整了内部部分算法;
你打开下载压缩包里的index.html,将会看到全新的演示。
1、增加FunctionValidator校验方式。作用:你可以用外部函数对表单元素进行校验和处理,返回true/false表示校验是否成功;返回字符串表示自定义错误信息,校验失败;如果没有返回值表示处理过程,校验成功。范例代码如下:
$("#sfzh").formValidator({onshow:"请输入15或18位的身份证",onfocus:"输入15或18位的身份证",oncorrect:"输入正确"}).FunctionValidator({fun:isCardID});
fun这个参数给你的函数传递了2个参数(该表单元素的值,表单元素element) 。具体情况,请看API帮助文档
2、当你调用PageIsValid的时候,如果未校验通过,则给onError传递2个参数(第一个校验没通过元素的错误信息,第一个校验没通过元素element)。范例代码如下:
$.formValidator.initConfig({onError:function(msg){alert(msg)}});
3、AjaxValidator校验方式增加一个配置参数buttons(你点提交的按钮(组)jQuery对象)。作用:当你触发了ajax校验,buttons里对应的按钮(组)就会灰掉,一直等待服务器返回数据为止。范例代码如下:
$("#test1").formValidator({...}).InputValidator({...}).AjaxValidator({
url : "Default.aspx",
datatype : "json",
success : function(data){...},
buttons: $("#button_id"),
error: function(){alert("服务器没有返回数据,可能服务器忙,请重试");},
onerror : "该用户名不可用,请更换用户名重新",
onwait : "正在对用户名进行合法性校验,请稍候..."
});
4、由于增加了自定义错误信息的功能,为了跟FunctionValidator校验方式里"fun"函数返回意义统一,更改了formValidator里的onvalid参数返回的意义,给大家带来不便请谅解。返回true/false表示校验是否成功;返回字符串表示自定义错误信息,校验失败;如果没有返回值表示处理过程,校验成功。
» 阅读全文
Tags: jquery, javascript, form, validator
Javascript | 评论:3
| 阅读:51089
Submitted by gouki on 2008, April 15, 11:30 PM
本文来自博客园的鸟食轩,作者是微软MVP
鸟食轩 Microsoft .NET[C#] MVP 2003
|
由于该作者在开发中经常用到JS,并且将自己写的文章汇总到了一起,因此记录下来,以做收藏,同时也可以当成学习用(虽然作者是C#方面的MVP,但是他在JS方面的造诣也很深哦)
» 阅读全文
Tags: 鸟食轩
Javascript | 评论:0
| 阅读:20960
Submitted by gouki on 2008, April 10, 2:54 PM
说实话,在看到这个Comet被人提起来的时候,我真的不知道是什么意思。翻开金山词霸,结果求伯君同学告诉我,这是彗星的意思。
彗星?怎么着也不能理解。。。于是乎G了一下,发现原来Comet并不是一个新技术,而是和AJAX一样也是一个炒冷饭的东东。
目前用的最多的使用Comet的大概是两种方法,一种是iframe,一种就是ajax。
用ajax的就没有什么好讲了,无非就是setIntval();定一个时间循环往复,往复循环的用ajax读回数据。
用iframe呢。则是利用现在的一些JS类库(当然不用也可以)生成一个Iframe 的Element,在这个页面里打开一个PHP或者其他的动态网页,再由那个网页不停的生成生成再生成,然后通过iFrame的window.parent.xxx.innerHtml = 'this...value...';通过这种方法将iframe里得到的内容生成到主页面上。
细看看这两种,哪种不是炒冷饭?只是冠以一个好听的名字而己,自从2001年,网络聊天室开始有无刷新聊天时,iframe取得数据返回主页面这种方法就早己经存在。AJAX虽然是最近几年的新酒,但何尝不是原来的那些方法的集合?只是以前可能用的是setIntval定时用window.location.reload();来进行页面刷新,现在是用AJAX取回数据再通过innerHtml来更新DIV区域而己。
自此,对Comet有点失望。毕竟对这些都只是一些简单的封装,没有什么新的东西。
Tags: iframe, ajax, comet
Javascript | 评论:4
| 阅读:29114
Submitted by gouki on 2008, April 3, 3:40 PM
本文属于多次转摘的文章,来自于Javaeye,但具体地址不明。文章写的挺详细,适合经常在IE和FF下面进行开发的人员。这么多种的浏览器呀,害死多少人。。。
» 阅读全文
Javascript | 评论:0
| 阅读:19749
Submitted by gouki on 2008, March 30, 8:55 PM
jQuery学习之bind
在mootools里面,如果要为某个DOM或者HTML标签等绑定一个操作用的是addEvents,移除一个事件的时候用的是removeEvents,在jQuery里面就相对比较简单,直接用bind函数和unbind函数就行了。
例如为一个button添加一个click。可以这样操作
XML/HTML代码
- <input type='button' id='myBtn'>
这是一个button,现在我们要为他添加一个事件
JavaScript代码
- <script>
- $('#myBtn').bind("click",function(){
- alert('click');
- });
- </script>
这样,我们就为这个button绑定了一个click的事件。
bind函数可以有三个参数,当第二个参数不是一个函数,而是一个数据对象时,它将默认做为bind第三个参数(函数)的参数。例如:
XML/HTML代码
- <script>
- function showAlert(events){
- alert(events.data.foo);
- }
- $('#myBtn').bind('click',{foo:'click'},showAlert);
- </script>
点击时,同样会显示:click
这些就是bind的一些基本用法,当然还有一些方法
比如在绑定方法的时候,用的是return false;可以让这个方法失效
JavaScript代码
- <script>
- $('#myBtn').bind('click',function(){
- return false;
- })
- </script>
这样,刚才绑定的click又失效了,不过,这种方法往往用在submit提交的时候比较多。
还有一些方法可以取消默认行为和阻止事件起泡:preventDefault 和stopPropagation
例:
JavaScript代码
- <script>
- $('#myBtn').bind('click',function(event){
- event.preventDefault();
- });
- $('#myBtn').bind('click',function(event){
- event.stopPropagation();
- });
-
- </script>
Tags: jquery
Javascript | 评论:1
| 阅读:40898