ajax实现分页,多条件查询步骤(基于nodejs)

分页步骤:

1.客户端发起请求,要求响应页面,显示数据,初始页码1,1页显示3条。获取数据的加勒比海盗方法需要设置参数,传递页码

2.服务器接收到客户端请求

3.  1.在加勒比海盗5数据库中查询出满足条件的加勒比海盗数据以及第一页显示的加勒比海盗数据(limit (页码-1)*显示条数,显示条数),返回信息
2.在加勒比海盗5数据库中获取满足条件的加勒比海盗所有条数,返回条数

4.在加勒比海盗5ajax的加勒比海盗onreadystatechange的加勒比海盗回调函数中进行响应,返回第一页的加勒比海盗数据

5.在加勒比海盗5js中获取到所有的加勒比海盗条数(3.2返回的加勒比海盗值),并计算出一共有多少页,可以添加相应的加勒比海盗按钮(获取总条数的加勒比海盗方法)

7.上一页,下一页,对页码进行+1或者-1,回调查询方法。点击筛选按钮时需要将查询方法的加勒比海盗参数值(页面)设置为1

多条件查询:

主要是字符串的加勒比海盗拼接,传递值得时候把所有需要搜索的加勒比海盗条件值一起传递到后台,在加勒比海盗5sql语句那里进行拼接

原sql语句 select * from user 
拼接时语句为修改为:select * from user where 1=1  (1=1表示条件为真)
获取需要筛选的加勒比海盗值,然后判断值是否为空,然后进行拼接,在加勒比海盗5数据库的加勒比海盗方法层写,如: var tname=tname;
    var tposition=tposition;   
    var sql="select * from user where 1=1 ";
    var arr=[];
    if(tname!=""){
        sql+=" and tname like ?";
        tname=’%’+tname+’%’;
        arr.push(tname);
    }
    if(tposition!=""){
        sql+=" and tposition like ?";
        tposition=’%’+tposition+’%’;
        arr.push(tposition);
    }
    然后再执行封装好的加勒比海盗sql方法

http://blog.csdn.net/qq_32375417/article/details/74025257加勒比海盗5

Javascript圣经学习Chap3.6~7

Javascript高级程序设计 Ch3

基本概念

3.6语句

1. if 语句

语法:

if (condition) {     statement1 }else if{     statement2 }else {     statement3 } 

2. do – while 语句

语法:

do {     statement }while(expression); 

像 do – while 这种后测试循环语句最常用于循环体中的加勒比海盗代码至少要被执行一次的加勒比海盗情形。

3. while 语句

语法:

while(expression) {     statement } 

4. for 语句

语法:

for (initialization; expression; post-loop-expression) {     statement } 

由于 for 语句存在加勒比海盗5极大的加勒比海盗灵活性,因此它也是ECMAScript中最常用的加勒比海盗一个语句。

5. for – in 语句

语法:

for (property in expression) {     statement } 

如果表示要迭代的加勒比海盗对象的加勒比海盗变量值为 null 或 undefined, for – in 语句会抛出错误。ES5更正了这一行为,对这种情况不再抛出错误,而只是不执行循环体。为了保证最大限度的加勒比海盗兼容性,建议在加勒比海盗5使用 for – in 循环之前,先检测缺人该对象的加勒比海盗值不是 null 或 undefined。

6. label 语句

语法:

label: statement 

使用label语句可以在加勒比海盗5代码中添加标签,**以便将来(break 和 continue)使用**

7. break 和 continue 语句

break 和 continue 语句用于在加勒比海盗5循环中精确地控制代码的加勒比海盗执行。他们都会立即退出循环,但是,break 语句会立即强制继续执行循环后面的加勒比海盗语句,而 continue 语句则会从循环的加勒比海盗顶部继续执行,也就是忽略掉循环体中 continue 后的加勒比海盗语句。
break 和 continue 语句都可以和 label 语句联合使用,从而返回到代码中特定的加勒比海盗位置(标签处),这种联合的加勒比海盗使用情况多使用于循环嵌套的加勒比海盗情况下

8. with 语句

语法:

with (expression) {     statement } 

作用是将代码的加勒比海盗作用域设置到一个特定的加勒比海盗对象中。严格模式下不允许使用 with 语句,另一方面,大量的加勒比海盗使用 with 语句会导致性能下降,同时也会给调试代码造成困难,因此不建议使用 with 语句

9. switch 语句

语法:

switch (expression) {     case value:         statement;         break;     case value:         statement;         break;     default value:         statement; } 

通过为每个 case 后面添加一个 break 语句,就可以避免同时执行多个 case 代码的加勒比海盗情况。假如确实需要混合几种情况,最好是在加勒比海盗5代码中添加注释,说明你是有意省略了 break 关键字
另外 switch 语句中可以使用任何数据类型

3.7 函数

通过函数可以封装任意多条语句,而且可以在加勒比海盗5任何地方、任何时候调用执行。用 function 关键字来声明,后跟一组参数以及函数体。
语法:

function functionName(arg0, arg1,...,argN) {     statements; } 

任何函数在加勒比海盗5任何时候都可以通过 return 语句后跟要返回的加勒比海盗值来实现返回值。
函数会在加勒比海盗5执行完 return 语句之后停止并立即退出,因此位于 return 后的加勒比海盗任何代码都不会执行。
严格模式下对函数有一些限制:
1. 不能把函数命名为 eval 或 arguments;
2. 不能把参数命名为 eval 或 arguments;
3. 不能出现两个命名参数同名的加勒比海盗情况。

1. 理解参数

ECMAScript中的加勒比海盗参数在加勒比海盗5内部是用一个数组来表示的加勒比海盗。函数接收到的加勒比海盗始终都是这个数组,而不关心数组内包含哪些参数。实际上,在加勒比海盗5函数体内可以通过 arguments 对象来访问这个参数数组,从而获取传递给函数的加勒比海盗每一个参数。arguments 对象只是与数组类似(它并不是 Array 的加勒比海盗实例),因为可以使用方括号语法访问它的加勒比海盗每一个元素(第一个是 arguments[0], 第二个是 arguments[1], 依此类推)。

命名的加勒比海盗参数只是提供便利,不是必须的加勒比海盗
arguments 对象可以与命名参数一起使用。

严格模式下对如何使用 arguments 对象作出了一些限制:

2. 没有重载

加勒比海盗5其它语言中(如Java),可以为一个函数编写两个定义,只要这两个定义的加勒比海盗签名(接受的加勒比海盗参数的加勒比海盗类型和数量)不同即可。但 ECMAScript 函数没有签名,所以也就不可能做到正真的加勒比海盗重载。
不过,通过检查传入函数中参数的加勒比海盗类型(valueOf)和数量(length)并作出不同的加勒比海盗反应,可以模仿方法的加勒比海盗重载。

http://blog.csdn.net/pappy_love_study/article/details/74020217加勒比海盗5

ol+arcgisser wms sld

前面讲过单个图层中如何在加勒比海盗5ol中请求Arcgis Server发布的加勒比海盗WMS,带SLD,现简要记录以下一个SLD中多图层存放,存在加勒比海盗5问题1.如何设置WMS中图层的加勒比海盗顺序,2.arcgiserver 在加勒比海盗5切片时对有些出数据在加勒比海盗5放大后会消失不显示

 <sld:NamedLayer>   //WMS中一个图层的加勒比海盗开始和结束        <sld:LayerFeatureConstraints>            <sld:FeatureTypeConstraint/>        </sld:LayerFeatureConstraints>    <sld:Name>greenlands</sld:Name>        <sld:UserStyle>            <sld:Name>greenlands</sld:Name>            <sld:FeatureTypeStyle>                <sld:Name>group 0</sld:Name>                <sld:FeatureTypeName>Feature</sld:FeatureTypeName>                <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>                <sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>                <sld:Rule>                    <sld:Name>default rule</sld:Name>                    <sld:MinScaleDenominator>0.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>500000.0</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#C8E49D</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#C8E49D</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>            </sld:FeatureTypeStyle>        </sld:UserStyle>    </sld:NamedLayer> <sld:NamedLayer>        <sld:LayerFeatureConstraints>            <sld:FeatureTypeConstraint/>        </sld:LayerFeatureConstraints>    <sld:Name>haven</sld:Name>        <sld:UserStyle>            <sld:Name>haven</sld:Name>            <sld:FeatureTypeStyle>                <sld:Name>group 0</sld:Name>                <sld:FeatureTypeName>Feature</sld:FeatureTypeName>                <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>                <sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>                <sld:Rule>                    <sld:Name>default rule</sld:Name>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#A3CCFF</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#A3CCFF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>            </sld:FeatureTypeStyle>        </sld:UserStyle>    </sld:NamedLayer> <sld:NamedLayer>        <sld:LayerFeatureConstraints>            <sld:FeatureTypeConstraint/>        </sld:LayerFeatureConstraints>    <sld:Name>islands</sld:Name>        <sld:UserStyle>            <sld:Name>islands</sld:Name>            <sld:FeatureTypeStyle>                <sld:Name>group 0</sld:Name>                <sld:FeatureTypeName>Feature</sld:FeatureTypeName>                <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>                <sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>                <sld:Rule>                    <sld:Name>default rule</sld:Name>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#C8E49D</sld:CssParameter>                            <sld:CssParameter name="fill-opacity">0.5</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#C8E49D</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>            </sld:FeatureTypeStyle>        </sld:UserStyle>    </sld:NamedLayer> <sld:NamedLayer>        <sld:LayerFeatureConstraints>            <sld:FeatureTypeConstraint/>        </sld:LayerFeatureConstraints>    <sld:Name>lakes</sld:Name>        <sld:UserStyle>            <sld:Name>lakes</sld:Name>            <sld:FeatureTypeStyle>                <sld:Name>group 0</sld:Name>                <sld:FeatureTypeName>Feature</sld:FeatureTypeName>                <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>                <sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>                <sld:Rule>                    <sld:Name>L2_LB2</sld:Name>                    <ogc:Filter>                        <ogc:PropertyIsLessThanOrEqualTo>                            <ogc:PropertyName>LB</ogc:PropertyName>                            <ogc:Literal>2</ogc:Literal>                        </ogc:PropertyIsLessThanOrEqualTo>                    </ogc:Filter>                    <sld:MinScaleDenominator>1.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>500000.0</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#A4CCFF</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#A4CCFF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>                <sld:Rule>                    <sld:Name>L1_LB8</sld:Name>                    <ogc:Filter>                        <ogc:PropertyIsEqualTo>                            <ogc:PropertyName>LB</ogc:PropertyName>                            <ogc:Literal>8</ogc:Literal>                        </ogc:PropertyIsEqualTo>                    </ogc:Filter>                    <sld:MinScaleDenominator>1.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>1.0E7</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#A4CCFF</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#A4CCFF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>                <sld:Rule>                    <sld:Name>L2_LB3</sld:Name>                    <ogc:Filter>                        <ogc:PropertyIsGreaterThanOrEqualTo>                            <ogc:PropertyName>LB</ogc:PropertyName>                            <ogc:Literal>3</ogc:Literal>                        </ogc:PropertyIsGreaterThanOrEqualTo>                    </ogc:Filter>                    <sld:MinScaleDenominator>1.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>500000.0</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#A3CCFF</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#A3CCFF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>            </sld:FeatureTypeStyle>        </sld:UserStyle>    </sld:NamedLayer> <sld:NamedLayer>        <sld:LayerFeatureConstraints>            <sld:FeatureTypeConstraint/>        </sld:LayerFeatureConstraints>    <sld:Name>rivers</sld:Name>        <sld:UserStyle>            <sld:Name>rivers</sld:Name>            <sld:IsDefault>1</sld:IsDefault>            <sld:FeatureTypeStyle>                <sld:Name>group 0</sld:Name>                <sld:FeatureTypeName>Feature</sld:FeatureTypeName>                <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>                <sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>                <sld:Rule>                    <sld:Name>L4_LB1</sld:Name>                    <ogc:Filter>                        <ogc:PropertyIsEqualTo>                            <ogc:PropertyName>LB</ogc:PropertyName>                            <ogc:Literal>1</ogc:Literal>                        </ogc:PropertyIsEqualTo>                    </ogc:Filter>                    <sld:MinScaleDenominator>1.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>125000.0</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#ACD2FF</sld:CssParameter>                            <sld:CssParameter name="fill-opacity">0.5</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#ACD2FF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>                <sld:Rule>                    <sld:Name>L3_LB2</sld:Name>                    <ogc:Filter>                        <ogc:PropertyIsEqualTo>                            <ogc:PropertyName>LB</ogc:PropertyName>                            <ogc:Literal>2</ogc:Literal>                        </ogc:PropertyIsEqualTo>                    </ogc:Filter>                    <sld:MinScaleDenominator>1.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>250000.0</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#ACD2FF</sld:CssParameter>                            <sld:CssParameter name="fill-opacity">0.5</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#ACD2FF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>                <sld:Rule>                    <sld:Name>L1_LB3</sld:Name>                    <ogc:Filter>                        <ogc:PropertyIsGreaterThanOrEqualTo>                            <ogc:PropertyName>LB</ogc:PropertyName>                            <ogc:Literal>3</ogc:Literal>                        </ogc:PropertyIsGreaterThanOrEqualTo>                    </ogc:Filter>                    <sld:MinScaleDenominator>1.0</sld:MinScaleDenominator>                    <sld:MaxScaleDenominator>1000000.0</sld:MaxScaleDenominator>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#ACD2FF</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#ACD2FF</sld:CssParameter>                            <sld:CssParameter name="stroke-width">0.0</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>            </sld:FeatureTypeStyle>        </sld:UserStyle>    </sld:NamedLayer> <sld:NamedLayer>        <sld:LayerFeatureConstraints>            <sld:FeatureTypeConstraint/>        </sld:LayerFeatureConstraints>    <sld:Name>transparent</sld:Name>        <sld:UserStyle>            <sld:Name>transparent</sld:Name>            <sld:FeatureTypeStyle>                <sld:Name>group 0</sld:Name>                <sld:FeatureTypeName>Feature</sld:FeatureTypeName>                <sld:SemanticTypeIdentifier>generic:geometry</sld:SemanticTypeIdentifier>                <sld:SemanticTypeIdentifier>simple</sld:SemanticTypeIdentifier>                <sld:Rule>                    <sld:Name>default rule</sld:Name>                    <sld:PolygonSymbolizer>                        <sld:Fill>                            <sld:CssParameter name="fill">#FCF9F2</sld:CssParameter>                        </sld:Fill>                        <sld:Stroke>                            <sld:CssParameter name="stroke">#FCF9F2</sld:CssParameter>                        </sld:Stroke>                    </sld:PolygonSymbolizer>                </sld:Rule>            </sld:FeatureTypeStyle>        </sld:UserStyle>    </sld:NamedLayer>

http://blog.csdn.net/u010933982/article/details/74022083加勒比海盗5

HTML5 新加的头部功能

  文章来源:http://tutorials.jenkov.com/html5/doctype.html

1、表示按HTML5的加勒比海盗规范写网页,以前要写一大堆,现在加勒比海盗5简单多了,大家都按HTML5的加勒比海盗规范,哪么所有的加勒比海盗浏览器和tomcat等其它的加勒比海盗浏览器和web容器全部认识。

<!DOCTYPE html>

2、表示这一个网页是由本地国家语言(如韩语,普通话,日语,英语)写的加勒比海盗,这挺重要的加勒比海盗,当计算机保存时必须把相应国家的加勒比海盗语言转换成对应的加勒比海盗unicode编码,不然不知道是谁的加勒比海盗

<!DOCTYPE html> <html lang="zh">  </html>

3、字符集:表示语言存入计算机里面的加勒比海盗编码格式,现在加勒比海盗5基本上用utf-8,(因为unicode编码是计算机世界通用语言)

   文章里面的加勒比海盗设置的加勒比海盗utf-8编码,只是方便我加勒比海盗5们自己看,真正在加勒比海盗5保存时指定utf-8编码,操作系统才按这种编码保存在加勒比海盗5内存或硬盘上。

   当你在加勒比海盗5文章指定是utf-8格式,必须“保存这一个网页文件"时也是以utf-8格式保存,

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8">  对应 HTML4   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head>  </html>

    HTML4可以用,但是麻烦

http://blog.csdn.net/monica12/article/details/74025294加勒比海盗5

php简单实现日历

使用php简单的加勒比海盗做了一个日历,对php的加勒比海盗时间函数又有了一个全新的加勒比海盗提升认识!


实现日历其实也比较简单,主要有几步:

1. 首先调整好一个要显示的加勒比海盗基本样式

2. 获取每个月第一天星期几(主要是为了显示日期前面空格填充)

3. 使用mktime()根据给出的加勒比海盗时间参数获取对应的加勒比海盗时间戳,然后转换成具体的加勒比海盗年和月…


代码如下:

1. 首先显示星期(日,一,二,三,四,五,六); 这个很好弄,定义一个数组,使用循环输出就行了

     #获取周日到周六     private function weeks()     {         $arr = array('日', '一', '二', '三', '四', '五', '六');          echo "<tr>";             for ($i = 0; $i < count($arr); ++$i) {                     echo "<td>" .$arr[$i]. "</td>";             }         echo "</tr>";     }


2. 然后初始化年和月; 创建一个构造函数初始化当前的加勒比海盗年和月,和每月第一天的加勒比海盗周几和每个月具体的加勒比海盗天数

 

    private $year;          // 年     private $month;         // 月     private $current_week;  // 每月份第一天的加勒比海盗周几     private $month_day;     // 月份的加勒比海盗天数      public function __construct()     {         date_default_timezone_set("Asia/Shanghai");          $this->year  = isset($_GET['year'])  ?  $_GET['year']  : date("Y");         $this->month = isset($_GET['month']) ?  $_GET['month'] : date("m");         $this->current_week = date("w", mktime(0, 0, 0, $this->month, 1, $this->year) );         $this->month_day    = date("t", mktime(0, 0, 0, $this->month, 1, $this->year));     }

小解: w:表示星期中的加勒比海盗第几天; t: 表示每个月的加勒比海盗实际总天数


3. 开始循环天数,首先确定月份第一天是周几后,输出空格(比如一号是周2,就输出两个空格,依次类推…)


 #循环获取天数    private function days()    {         echo "<tr>";              //输出空格             for ($b = 0; $b < $this->current_week; ++$b) {                 echo "<td>&nbsp;</td>";             }             //输出天数             for ($a = 1; $a <= $this->month_day; ++$a) {                 $b++;                  if ($a == date("d")) {                     echo "<td style='background:blue;'>" . $a . "</td>";                 } else {                     echo "<td>" . $a . "</td>";                 }                 if ($b%7 === 0) {                     echo "<tr></tr>";                 }              }         echo "</tr>";    }

最后一个初步的加勒比海盗日历显示出来了,效果如下:

 php简单实现日历


4. 接着来:显示出当前的加勒比海盗年和月;就是把当前的加勒比海盗年和月输出即可,然后在加勒比海盗5年和月上面增加一个超链接(实际操作时ajax异步来处理的加勒比海盗)然后点击就进行年和月的加勒比海盗切换:

 

   //点击改变年和月     private function changedate()     {         echo "<a href='?".$this->changeYear($this->year, $this->month)."'> <<< </a> ";         echo "<a href='?".$this->changeMonth($this->year, $this->month)."'> << </a> ";         echo $this->year ." ". $this->month;         echo "<a href='?".$this->changeMonthAdd($this->year, $this->month)."'> >> </a>";         echo " <a href='?".$this->changeYearAdd($this->year, $this->month)."'> >>> </a>";     }


加勒比海盗5超链接上我加勒比海盗5是学习别人使用的加勒比海盗方法形式。(年份)具体方法如下:

   //改变年(减)     private function changeYear($year, $month)     {         $year  = $year - 1;          return "year=" . $year . "&month=" . $month;     }      //改变月份(减)     private function changeMonth($year, $month)     {         if ($month == 1 || $month == "01") {             $year = $year - 1;             $month = 12;         } else {             $month--;         }         return "year=" . $year . "&month=" . $month;     }      //改变年(加)     private function changeYearAdd($year, $month)     {         $year  = $year + 1;          return "year=" . $year . "&month=" . $month;     }      //改变月份(加)     private function changeMonthAdd($year, $month)     {         if ($month == 12) {             $year = $year + 1;             $month = 1;         } else {             $month++;         }         return "year=" . $year . "&month=" . $month;     }

这里的加勒比海盗实现使用了一个简单的加勒比海盗小小算法:

  1.1 当年份是向后(减)的加勒比海盗时候,对当前的加勒比海盗年进行减一,然后通过链接以get的加勒比海盗方式传递过去,在加勒比海盗5获取时,通过$_GET超全局数组来获取到传递过来的加勒比海盗值,月份同样是如此操作的加勒比海盗

  1.2  当月份向后(减)的加勒比海盗时候,月份总共12个月,当月份为一月份的加勒比海盗时候,对年减一,然后月份为12份,相当于意思就是:年份减一,向后退了一年,月份是12月份。返过来月份相加时,年份加一,月份是一月份。

代码就是上面的加勒比海盗四个方法。


整体代码如下:

<?php namespace Admin/Controller;  class IndexController extends /Think/Controller {      private $year;          //年     private $month;         //月     private $current_week;  //当前月第一天的加勒比海盗周几     private $month_day;     // 前月的加勒比海盗天数      public function __construct()     {         date_default_timezone_set("Asia/Shanghai");          $this->year  = isset($_GET['year'])  ?  $_GET['year']  : date("Y");         $this->month = isset($_GET['month']) ?  $_GET['month'] : date("m");         $this->current_week = date("w", mktime(0, 0, 0, $this->month, 1, $this->year) );         $this->month_day    = date("t", mktime(0, 0, 0, $this->month, 1, $this->year));     }       public function index()     {         $this->outputs();     }       #输出     private function outputs()     {         echo "<table border='1'>";             $this->changedate();             $this->weeks();             $this->days();         echo "</table>";     }       #获取周日到周六     private function weeks()     {         $arr = array('日', '一', '二', '三', '四', '五', '六');          echo "<tr>";             for ($i = 0; $i < count($arr); ++$i) {                     echo "<td>" .$arr[$i]. "</td>";             }         echo "</tr>";     }       #循环获取天数    private function days()    {         echo "<tr>";              for ($b = 0; $b < $this->current_week; ++$b) {                 echo "<td> </td>";             }               for ($a = 1; $a <= $this->month_day; ++$a) {                 $b++;                  if ($a == date("d")) {                     echo "<td style='background:blue;'>" . $a . "</td>";                 } else {                     echo "<td>" . $a . "</td>";                 }                 if ($b%7 === 0) {                     echo "<tr></tr>";                 }              }         echo "</tr>";    }     //改变年     private function changeYear($year, $month)     {         $year  = $year - 1;          return "year=" . $year . "&month=" . $month;     }      //改变月份     private function changeMonth($year, $month)     {         if ($month == 1 || $month == "01") {             $year = $year - 1;             $month = 12;         } else {             $month--;         }         return "year=" . $year . "&month=" . $month;     }      //改变年     private function changeYearAdd($year, $month)     {         $year  = $year + 1;          return "year=" . $year . "&month=" . $month;     }      //改变月份     private function changeMonthAdd($year, $month)     {         if ($month == 12) {             $year = $year + 1;             $month = 1;         } else {             $month++;         }         return "year=" . $year . "&month=" . $month;     }     //点击改变年和月     private function changedate()     {         echo "<a href='?".$this->changeYear($this->year, $this->month)."'> <<< </a> ";         echo "<a href='?".$this->changeMonth($this->year, $this->month)."'> << </a> ";         echo $this->year ." ". $this->month;         echo "<a href='?".$this->changeMonthAdd($this->year, $this->month)."'> >> </a>";         echo " <a href='?".$this->changeYearAdd($this->year, $this->month)."'> >>> </a>";     }  }

最终效果:

 php简单实现日历

 

样式很丑,没有去调整,整个流程走了一遍,主要是为了学习。相互学习,相互交流;

欢迎一起学习:微信号:zhaoyufengxixi  QQ号:1526607040


http://blog.csdn.net/weixin_37546664/article/details/74019021加勒比海盗5

jquery中attr()与prop()的区别

加勒比海盗5jquery中,这两个方法都是用来获取元素的加勒比海盗属性的加勒比海盗,他们的加勒比海盗区别之处在加勒比海盗5哪里呢?我加勒比海盗5们知道,在加勒比海盗5html中,有部分属性是只需要添加属性名即可生效的加勒比海盗,如checked,disable等,对于这些属性,如果使用attr方法的加勒比海盗时候难免会出意外,所以在加勒比海盗51.6版本之后,jquery使用了新方法prop()来获取他们,使用此方法获取的加勒比海盗时候,只会返回true/false,而不会返回checked这种返回值。所以建议:

1.只需要添加属性名就可以生效的加勒比海盗属性使用prop;

2.只存在加勒比海盗5true/false属性值的加勒比海盗属性使用prop。

http://blog.csdn.net/wangzai_dreamer/article/details/74025305加勒比海盗5

如何用CSS打造评论功能中的星级打分效果

默认样式

如何用CSS打造评论功能中的<a href=加勒比海盗星级打分效果” />

鼠标划上去样式:

如何用CSS打造评论功能中的<a href=加勒比海盗星级打分效果” />

HTML代码:

<ul class="ul">       <li index="1"></li>       <li index="2"></li>       <li index="3"></li>       <li index="4"></li>       <li index="5"></li>       <li index="6"></li>       <li index="7"></li>       <li index="8"></li>       <li index="9"></li>       <li index="10"></li>     </ul>

分析一下

第一步:我加勒比海盗5们要添加十个元素标签上去。

第二步:默认情况要给每个元素添加一个默认图片对吧

第三步:当鼠标划上UL标签后,让每一个标签都有一个选中状态的加勒比海盗背景图片

第四步:CSS的加勒比海盗关系选择器中有一个E~F, 它是兄弟选择器,给它中背景图片设置默认不选中的加勒比海盗状态,就是选中的加勒比海盗li标签以后的加勒比海盗元素标签都可以继承这个选中中设置的加勒比海盗属性值

写文章方便有很大的加勒比海盗补足,大家根据效果体会一下,实现原理很简单。

最后贴出来CSS样式:

ul {         width:200px;         height:20px;       }       ul li {         float:left;         width:20px;         height:20px;         list-style:none;         background-image : url('http://img.blog.csdn.net/20170630195313808');       }       ul:hover li {         background-image : url('http://img.blog.csdn.net/20170630195244977');       }       ul li:hover ~ li {         background-image : url('http://img.blog.csdn.net/20170630195313808');       }

ps:一开始重点考虑star之间有一个空隙。所以上面代码也无效,后来分析 了一下,可以用一个比start大的加勒比海盗图片,这样也可以实现start之间有间隔,哈哈!

http://blog.csdn.net/itpinpai/article/details/74011808加勒比海盗5

jQuery验证控件jquery.validate.js使用说明+中文API

官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation

jQuery plugin: Validation 使用说明  

转载自:http://blog.sina.com.cn/s/blog_608475eb0100h3h1.html

 

一导入js
<script src=”../js/jquery.js” type=”text/JavaScript“></script>
<script src=”../js/jquery.validate.js” type=”text/javascript“></script>

 

二、默认校验规则
(1)required:true                必输字段
(2)remote:”check.PHP“      使用ajax方法调用check.php验证输入值
(3)email:true                    必须输入正确格式的加勒比海盗电子邮件
(4)url:true                        必须输入正确格式的加勒比海盗网址
(5)date:true                      必须输入正确格式的加勒比海盗日期 日期校验ie6出错,慎用
(6)dateISO:true                必须输入正确格式的加勒比海盗日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
(7)number:true                 必须输入合法的加勒比海盗数字(负数,小数)
(8)digits:true                    必须输入整数
(9)creditcard:                   必须输入合法的加勒比海盗信用卡号
(10)equalTo:”#field”          输入值必须和#field相同
(11)accept:                       输入拥有合法后缀名的加勒比海盗字符串(上传文件的加勒比海盗后缀)
(12)maxlength:5               输入长度最多是5的加勒比海盗字符串(汉字算一个字符)
(13)minlength:10              输入长度最小是10的加勒比海盗字符串(汉字算一个字符)
(14)rangelength:[5,10]      输入长度必须介于 5 和 10 之间的加勒比海盗字符串”)(汉字算一个字符)
(15)range:[5,10]               输入值必须介于 5 和 10 之间
(16)max:5                        输入值不能大于5
(17)min:10                       输入值不能小于10

 

三、默认的加勒比海盗提示
messages: {
    required: “This field is required.”,
    remote: “Please fix this field.”,
    email: “Please enter a valid email address.”,
    url: “Please enter a valid URL.”,
    date: “Please enter a valid date.”,
    dateISO: “Please enter a valid date (ISO).”,
    dateDE: “Bitte geben Sie ein g眉ltiges Datum ein.”,
    number: “Please enter a valid number.”,
    numberDE: “Bitte geben Sie eine Nummer ein.”,
    digits: “Please enter only digits”,
    creditcard: “Please enter a valid credit card number.”,
    equalTo: “Please enter the same value again.”,
    accept: “Please enter a value with a valid extension.”,
    maxlength: .validator.format(Pleaseenternomorethan0characters.),minlength:.validator.format(“Please enter at least {0} characters.”),
    rangelength: .validator.format(Pleaseenteravaluebetween0and1characterslong.),range:.validator.format(“Please enter a value between {0} and {1}.”),
    max: .validator.format(Pleaseenteravaluelessthanorequalto0.),min:.validator.format(“Please enter a value greater than or equal to {0}.”)
},

如需要修改,可在加勒比海盗5js代码中加入:

jQuery.extend(jQuery.validator.messages, {
  required: “必选字段”,
  remote: “请修正该字段”,
  email: “请输入正确格式的加勒比海盗电子邮件”,
  url: “请输入合法的加勒比海盗网址”,
  date: “请输入合法的加勒比海盗日期”,
  dateISO: “请输入合法的加勒比海盗日期 (ISO).”,
  number: “请输入合法的加勒比海盗数字”,
  digits: “只能输入整数”,
  creditcard: “请输入合法的加勒比海盗信用卡号”,
  equalTo: “请再次输入相同的加勒比海盗值”,
  accept: “请输入拥有合法后缀名的加勒比海盗字符串”,
  maxlength: jQuery.validator.format(“请输入一个 长度最多是 {0} 的加勒比海盗字符串”),
  minlength: jQuery.validator.format(“请输入一个 长度最少是 {0} 的加勒比海盗字符串”),
  rangelength: jQuery.validator.format(“请输入 一个长度介于 {0} 和 {1} 之间的加勒比海盗字符串”),
  range: jQuery.validator.format(“请输入一个介于 {0} 和 {1} 之间的加勒比海盗值”),
  max: jQuery.validator.format(“请输入一个最大为{0} 的加勒比海盗值”),
  min: jQuery.validator.format(“请输入一个最小为{0} 的加勒比海盗值”)
});

推荐做法,将此文件放入messages_cn.js中,在加勒比海盗5页面中引入
<script src=”../js/messages_cn.js” type=”text/javascript”></script>

 

四、使用方式
1.将校验规则写到控件中

jQuery验证控件jquery.validate.js使用说明+中文API
<script src=”../js/jquery.js” type=”text/javascript”></script>
<script src=”../js/jquery.validate.js” type=”text/javascript”></script>
<script src=”./js/jquery.metadata.js” type=”text/javascript”></script>

().ready(function() {(“#signupForm”).validate();
});

<form id=”signupForm” method=”get” action=”“>
    <p>
        <label for=”firstname”>Firstname</label>
        <input id=”firstname” name=”firstname” class=”required” />
    </p>
 <p>
  <label for=”email”>E-Mail</label>
  <input id=”email” name=”email” class=”required email” />
 </p>
 <p>
  <label for=”password”>Password</label>
  <input id=”password” name=”password” type=”password” class=”{required:true,minlength:5}” />
 </p>
 <p>
  <label for=”confirm_password”>确认密码</label>
  <input id=”confirm_password” name=”confirm_password” type=”password” class=”{required:true,minlength:5,equalTo:’#password’}” />
 </p>
    <p>
        <input class=”submit” type=”submit” value=”Submit”/>
    </p>
</form>

jQuery验证控件jquery.validate.js使用说明+中文API

使用class=”{}”的加勒比海盗方式,必须引入包:jquery.metadata.js

可以使用如下的加勒比海盗方法,修改提示内容:
class=”{required:true,minlength:5,messages:{required:’请输入内容’}}”

加勒比海盗5使用equalTo关键字时,后面的加勒比海盗内容必须加上引号,如下代码:
class=”{required:true,minlength:5,equalTo:’#password’}”

 

2.将校验规则写到js代码中

jQuery验证控件jquery.validate.js使用说明+中文API
$().ready(function() {
 $(“#signupForm”).validate({
        rules: {
   firstname: “required”,
   email: {
    required: true,
    email: true
   },
   password: {
    required: true,
    minlength: 5
   },
   confirm_password: {
    required: true,
    minlength: 5,
    equalTo: ”#password”
   }
  },
        messages: {
   firstname: ”请输入姓名”,
   email: {
    required: ”请输入Email地址”,
    email: ”请输入正确的加勒比海盗email地址”
   },
   password: {
    required: ”请输入密码”,
    minlength: jQuery.format(“密码不能小于{0}个字 符”)
   },
   confirm_password: {
    required: ”请输入确认密码”,
    minlength: ”确认密码不能小于5个字符”,
    equalTo: ”两次输入密码不一致不一致”
   }
  }
    });
});
jQuery验证控件jquery.validate.js使用说明+中文API

//messages处,如果某个控件没有message,将调用默认的加勒比海盗信息

jQuery验证控件jquery.validate.js使用说明+中文API
<form id=”signupForm” method=”get” action=”“>
    <p>
        <label for=”firstname”>Firstname</label>
        <input id=”firstname” name=”firstname” />
    </p>
 <p>
  <label for=”email”>E-Mail</label>
  <input id=”email” name=”email” />
 </p>
 <p>
  <label for=”password”>Password</label>
  <input id=”password” name=”password” type=”password” />
 </p>
 <p>
  <label for=”confirm_password”>确认密码</label>
  <input id=”confirm_password” name=”confirm_password” type=”password” />
 </p>
    <p>
        <input class=”submit” type=”submit” value=”Submit”/>
    </p>
</form>
jQuery验证控件jquery.validate.js使用说明+中文API

 

required:true 必须有值
required:”#aa:checked”表达式的加勒比海盗值为真,则需要验证
required:function(){}返回为真,表时需要验证
后边两种常用于,表单中需要同时填或不填的加勒比海盗元素

 

五、常用方法及注意问题
1.用其他方式替代默认的加勒比海盗SUBMIT
().ready(function() {(“#signupForm”).validate({
        submitHandler:function(form){
            alert(“submitted”);   
            form.submit();
        }    
    });
});

使用ajax方式

 (“.selector”).validate({      
 submitHandler: function(form)  
   {
(form).ajaxSubmit();     
   }  
 }) 

可以设置validate的加勒比海盗默认值,写法如下:
$.validator.setDefaults({
 submitHandler: function(form) { alert(“submitted!”);form.submit(); }
});

如果想提交表单, 需要使用form.submit()而不要使用$(form).submit()

2.debug,只验证不提交表单
如果这个参数为true,那么表单不会提交,只进行检查,调试时十分方便

().ready(function() { 
 $(“#signupForm”).validate({ 
        debug:true 
    }); 
}); 
如果一个页面中有多个表单都想设置成为debug,用
.validator.setDefaults({
   debug: true
})

3.ignore:忽略某些元素不验证
ignore: “.ignore”
4.更改错误信息显示的加勒比海盗位置
errorPlacement:Callback

 Default: 把错误信息放在加勒比海盗5验证的加勒比海盗元素后面 
指明错误放置的加勒比海盗位置,默认情况是:error.appendTo(element.parent());即把错误信息放在加勒比海盗5验证的加勒比海盗元素后面 
errorPlacement: function(error, element) {  
    error.appendTo(element.parent());  
}

//示例:

jQuery验证控件jquery.validate.js使用说明+中文API
<tr>
    <td class=”label”><label id=”lfirstname” for=”firstname”>First Name</label></td>
    <td class=”field”><input id=”firstname” name=”firstname” type=”text” value=”“ maxlength=”100” /></td>
    <td class=”status”></td>
</tr>
<tr>
    <td style=”padding-right: 5px;”>
        <input id=”dateformat_eu” name=”dateformat” type=”radio” value=”0” />
        <label id=”ldateformat_eu” for=”dateformat_eu”>14/02/07</label>
    </td>
    <td style=”padding-left: 5px;”>
        <input id=”dateformat_am” name=”dateformat” type=”radio” value=”1”  />
        <label id=”ldateformat_am” for=”dateformat_am”>02/14/07</label>
    </td>
    <td></td>
</tr>
<tr>
    <td class=”label”>&nbsp;</td>
    <td class=”field” colspan=”2”>
        <div id=”termswrap”>
            <input id=”terms” type=”checkbox” name=”terms” />
            <label id=”lterms” for=”terms”>I have read and accept the Terms of Use.</label>
        </div>
    </td>
</tr>

errorPlacement: function(error, element) {
    if ( element.is(“:radio”) )
        error.appendTo( element.parent().next().next() );
    else if ( element.is(“:checkbox”) )
        error.appendTo ( element.next() );
    else
        error.appendTo( element.parent().next() );
}

jQuery验证控件jquery.validate.js使用说明+中文API

代码的加勒比海盗作用是:一般情况下把错误信息显示在加勒比海盗5<td class=”status”></td>中,如果是radio显示在加勒比海盗5<td></td>中,如果是 checkbox显示在加勒比海盗5内容的加勒比海盗后面

errorClass:String  Default: “error” 
指定错误提示的加勒比海盗css类名,可以自定义错误提示的加勒比海盗样式

errorElement:String  Default: “label” 
用什么标签标记错误,默认的加勒比海盗是label你可以改成em

errorContainer:Selector 
显示或者隐藏验证信息,可以自动实现有错误信息出现时把容器属性变为显示,无错误时隐藏,用处不大
errorContainer: “#messageBox1, #messageBox2”

errorLabelContainer:Selector
把错误信息统一放在加勒比海盗5一个容器里面。

wrapper:String
用什么标签再把上边的加勒比海盗errorELement包起来

一般这三个属性同时使用,实现在加勒比海盗5一个容器内显示所有错误提示的加勒比海盗功能,并且没有信息时自动隐藏

errorContainer: “div.error”,
errorLabelContainer: $(“#signupForm div.error”),
wrapper: “li”

5更改错误信息显示的加勒比海盗样式
设置错误提示的加勒比海盗样式,可以增加图标显示,在加勒比海盗5该系统中已经建立了一个validation.css专门用于维护校验文件的加勒比海盗样式

 

input.error { border: 1px solid red; }
label.error {
  background:url(“./demo/images/unchecked.gif”) no-repeat 0px 0px;

  padding-left: 16px;

  padding-bottom: 2px;

  font-weight: bold;

  color: #EA5200;
}
label.checked {
  background:url(“./demo/images/checked.gif”) no-repeat 0px 0px;
}

6每个字段验证通过执行函数
success:String,Callback
要验证的加勒比海盗元素通过验证后的加勒比海盗动作,如果跟一个字符串,会当做一个css类,也可跟一个函数
success: function(label) {
    // set &nbsp; as text for IE
    label.html(“&nbsp;”).addClass(“checked”);
    //label.addClass(“valid”).text(“Ok!”)
}
添加”valid” 到验证元素, 在加勒比海盗5CSS中定义的加勒比海盗样式<style>label.valid {}</style>
success: “valid”

 

7验证的加勒比海盗触发方式修改
下面的加勒比海盗虽然是boolean型的加勒比海盗,但建议除非要改为false,否则别乱添加。

onsubmit:Boolean  Default: true 
提交时验证. 设置唯false就用其他方法去验证
onfocusout:Boolean  Default: true 
失去焦点是验证(不包括checkboxes/radio buttons)
onkeyup:Boolean  Default: true 
加勒比海盗5keyup时验证.
onclick:Boolean  Default: true 
加勒比海盗5checkboxes 和 radio 点击时验证
focusInvalid:Boolean  Default: true 
提交表单后,未通过验证的加勒比海盗表单(第一个或提交之前获得焦点的加勒比海盗未通过验证的加勒比海盗表单)会获得焦点
focusCleanup:Boolean  Default: false 
如果是true那么当未通过验证的加勒比海盗元素获得焦点时,移除错误提示。避免和 focusInvalid 一起用

 

// 重置表单
().ready(function() { 
 var validator =
(“#signupForm”).validate({
        submitHandler:function(form){
            alert(“submitted”);   
            form.submit();
        }    
    });
    $(“#reset”).click(function() {
        validator.resetForm();
    });

});

8异步验证
remote:URL
使用ajax方式进行验证,默认会提交当前验证的加勒比海盗值到远程地址,如果需要提交其他的加勒比海盗值,可以使用data选项

remote: “check-email.php”

remote: {
    url: “check-email.php”,     //后台处理程序
    type: “post”,               //数据发送方式
    dataType: “json”,           //接受数据格式   
    data: {                     //要传递的加勒比海盗数据
        username: function() {
            return $(“#username”).val();
        }
    }
}

远程地址只能输出 “true” 或 “false”,不能有其它输出

 

9添加自定义校验
addMethod:name, method, message
自定义验证方法

// 中文字两个字节
jQuery.validator.addMethod(“byteRangeLength”, function(value, element, param) {
    var length = value.length;
    for(var i = 0; i < value.length; i++){
        if(value.charCodeAt(i) > 127){
            length++;
        }
    }
  return this.optional(element) || ( length >= param[0] && length <= param[1] );   
}, $.validator.format(“请确保输入的加勒比海盗值在加勒比海盗5{0}-{1}个字节之间(一个中文字算2个字节)”));

// 邮政编码验证   
jQuery.validator.addMethod(“isZipCode”, function(value, element) {   
    var tel = /^[0-9]{6}$/;
    return this.optional(element) || (tel.test(value));
}, “请正确填写您的加勒比海盗邮政编码”);

 

1.要在加勒比海盗5additional-methods.js文件中添加或者在加勒比海盗5jquery.validate.js添加
建议一般写在加勒比海盗5additional-methods.js文件中

2.在加勒比海盗5messages_cn.js文件添加:isZipCode: “只能包括中文字、英文字母、数字和下划线”,

调用前要添加对additional-methods.js文件的加勒比海盗引用。

 

 

10radio和checkbox、select的加勒比海盗验证
 

1.radio的加勒比海盗required表示必须选中一个
<input  type=”radio” id=”gender_male” value=”m” name=”gender” class=”{required:true}” />
<input  type=”radio” id=”gender_female” value=”f” name=”gender”/>

 

2.checkbox的加勒比海盗required表示必须选中
<input type=”checkbox” class=”checkbox” id=”agree” name=”agree” class=”{required:true}” />

checkbox的加勒比海盗minlength表示必须选中的加勒比海盗最小个数,maxlength表示最大的加勒比海盗选中个数,rangelength:[2,3]表 示选中个数区间

<input type=”checkbox” class=”checkbox” id=”spam_email” value=”email” name=”spam[]” class=”{required:true, minlength:2}” />
<input type=”checkbox” class=”checkbox” id=”spam_phone” value=”phone” name=”spam[]” />
<input type=”checkbox” class=”checkbox” id=”spam_mail” value=”mail” name=”spam[]” />

 

    3.select的加勒比海盗required表示选中的加勒比海盗value不能为空
<select id=”jungle” name=”jungle” title=”Please select something!” class=”{required:true}”>
    <option value=”“></option>
    <option value=”1”>Buga</option>
    <option value=”2”>Baga</option>
    <option value=”3”>Oi</option>
</select>

 

select的加勒比海盗minlength表示选中的加勒比海盗最小个数(可多选的加勒比海盗select),maxlength表示最大的加勒比海盗选中个 数,rangelength:[2,3]表示选中个数区间
<select id=”fruit” name=”fruit” title=”Please select at least two fruits” class=”{required:true, minlength:2}” multiple=”multiple”>
    <option value=”b”>Banana</option>
    <option value=”a”>Apple</option>
    <option value=”p”>Peach</option>
    <option value=”t”>Turtle</option>
</select>

 

 

jQuery.validate 中文API   

名称

返回类型

描述

validate(options)

返回:Validator

验证所选的加勒比海盗FORM

valid()

返回:Boolean

检查是否验证通过

rules()

返回:Options

返回元素的加勒比海盗验证规则

rules(“add”,rules)

返回:Options

增加验证规则

rules(“remove”,rules)

返回:Options

删除验证规则

removeAttrs(attributes)

返回:Options

删除特殊属性并且返回他们

Custom selectors

:blank

返回:Validator

没有值的加勒比海盗筛选器

:filled

返回:Array <Element 
>

有值的加勒比海盗筛选器

:unchecked

返回:Array <Element 
>

没选择的加勒比海盗元素的加勒比海盗筛选器

Utilities

jQuery.format

(template,argument 
,argumentN…)

返回:String

用参数代替模板中的加勒比海盗 
{n}

Validator:

validate方法返回一个Validator对象,它有很多方法让你能使用引发校验程序或者改变form加勒比海盗内容. validator对象有很多方法,但下面只是列出常用的加勒比海盗

form()

返回:Boolean

验证form返回成功还是失败

element(element)

返回:Boolean

验证单个元素是成功还是失败

resetForm()

返回:undefined

把前面验证的加勒比海盗FORM恢复到验证前原来的加勒比海盗状态

showErrors(errors)

返回:undefined

显示特定的加勒比海盗错误信息

Validator functions:

setDefaults(defaults)

返回:undefined

改变默认的加勒比海盗设置

addMethod(name,method,message)

返回:undefined

添加一个新的加勒比海盗验证方法必须包括一个独一无二的加勒比海盗名字,一个JAVASCRIPT加勒比海盗方法和一个默认的加勒比海盗信息

addClassRules(name,rules)

返回:undefined

增加组合验证类型 在加勒比海盗5一个类里面用多种验证方法里比较有用

addClassRules(rules)

返回:undefined

增加组合验证类型 在加勒比海盗5一个类里面用多种验证方法里比较有用,这个是一下子加多个

内置验证方式:

required()

返回:Boolean

必填验证元素

required(dependency-expression)

返回:Boolean

必填元素依赖于表达式的加勒比海盗结果

required(dependency-callback)

返回:Boolean

必填元素依赖于回调函数的加勒比海盗结果

remote(url)

返回:Boolean

请求远程校验。url通常是一个远程调用方法

minlength(length)

返回:Boolean

设置最小长度

maxlength(length)

返回:Boolean

设置最大长度

rangelength(range)

返回:Boolean

设置一个长度范围[min,max]

min(value)

返回:Boolean

设置最大值

max(value)

返回:Boolean

设置最小值

email()

返回:Boolean

验证电子邮箱格式

range(range)

返回:Boolean

设置值的加勒比海盗范围

url()

返回:Boolean

验证URL格式

date()

返回:Boolean

验证日期格式(类似30/30/2008加勒比海盗格式,不验证日期准确性只验证格式)

dateISO()

返回:Boolean

验证ISO类型的加勒比海盗日期格式

dateDE()

返回:Boolean

验证德式的加勒比海盗日期格式(29.04.1994 or 
1.1.2006

number()

返回:Boolean

验证十进制数字(包括小数的加勒比海盗

digits()

返回:Boolean

验证整数

creditcard()

返回:Boolean

验证信用卡号

accept(extension)

返回:Boolean

验证相同后缀名的加勒比海盗字符串

equalTo(other)

返回:Boolean

验证两个输入框的加勒比海盗内容是否相同

phoneUS()

返回:Boolean

验证美式的加勒比海盗电话号码

validate ()加勒比海盗可选项:

debug:进行调试模式(表单不提交):

$(“.selector”).validate

({

   debug:true

})

把调试设置为默认:

$.validator.setDefaults({

   debug:true

})

submitHandler:

通过验证后运行的加勒比海盗函数,里面要加上表单提交的加勒比海盗函数,否则表单不会提交

$(“.selector”).validate({

   submitHandler:function(form) 
{

$(form).ajaxSubmit();

   }

})

ignore:

对某些元素不进行验证

$(“#myform”).validate({

   ignore:”.ignore”

})

rules:

自定义规则,key:value加勒比海盗形式,key是要验证的加勒比海盗元素,value可以是字符串或对象

$(“.selector”).validate({

   rules:{

     name:”required”,

     email:{

       required:true,

       email:true

     }

   }

})

messages:

自定义的加勒比海盗提示信息key:value加勒比海盗形式key是要验证的加勒比海盗元素,值是字符串或函数

$(“.selector”).validate({

   rules:{

     name:”required”,

     email:{

       required:true,

       email:true

     }

   },

   messages:{

     name:”Name不能为空”,

     email:{

       
required:”E-mail
不能为空”,

       email:”E-mail地址不正确

     }

   }

})

groups:

对一组元素的加勒比海盗验证,用一个错误提示,error Placement控制把出错信息放在加勒比海盗5哪里

$(“#myform”).validate({

  groups:{

    username:”fname 
lname”

  },

  
errorPlacement:function(error,element) {

     if (element.attr(“name”) == 
“fname” || element.attr(“name”) == “lname”)

       
error.insertAfter(“#lastname”);

     else

       
error.insertAfter(element);

   },

   debug:true

})

Onubmit Boolean 默认:true

是否提交时验证

$(“.selector”).validate({

   
onsubmit:false

})

onfocusout Boolean 默认:true  

是否在加勒比海盗5获取焦点时验证

$(“.selector”).validate({

   
onfocusout:false

})

onkeyup Boolean 默认:true  

是否在加勒比海盗5敲击键盘时验证

$(“.selector”).validate({

   onkeyup:false

})

onclick Boolean 默认:true

是否在加勒比海盗5鼠标点击时验证(一般验证checkbox,radiobox

$(“.selector”).validate({

   onclick:false

})

focusInvalid Boolean 默认:true

提交表单后,未通过验证的加勒比海盗表单(第一个或提交之前获得焦点的加勒比海盗未通过验证的加勒比海盗表单)会获得焦点

$(“.selector”).validate({

   focusInvalid:false

})

focusCleanup Boolean 默认:false

当未通过验证的加勒比海盗元素获得焦点时,并移除错误提示(避免和 focusInvalid.一起使用)

$(“.selector”).validate({

   focusCleanup:true

})

errorClass String 默认:”error”

指定错误提示的加勒比海盗css类名,可以自定义错误提示的加勒比海盗样式

$(“.selector”).validate({

   
errorClass:”invalid”

})

errorElement String 默认:”label”

使用什么标签标记错误

$(“.selector”).validate

   errorElement:”em”

})

wrapper String

使用什么标签再把上边的加勒比海盗errorELement包起来

$(“.selector”).validate({

   wrapper:”li”

})

errorLabelContainer Selector

把错误信息统一放在加勒比海盗5一个容器里面

$(“#myform”).validate({

   
errorLabelContainer:”#messageBox”,

   wrapper:”li”,

   submitHandler:function() { 
alert(“Submitted!”) }

})

showErrors:

跟一个函数,可以显示总共有多少个未通过验证的加勒比海盗元素

$(“.selector”).validate({

   
showErrors:function(errorMap,errorList) {

        $(“#summary”).html(“Your 
form contains ” + this.numberOfInvalids() + ” errors,see details 
below.”);

        
this.defaultShowErrors();

   }

})

errorPlacement:

跟一个函数,可以自定义错误放到哪里

$(“#myform”).validate({

  
rrorPlacement:function(error,element) {  
error.appendTo(element.parent(“td”).next(“td”));

   },

   debug:true

})

success:

要验证的加勒比海盗元素通过验证后的加勒比海盗动作,如果跟一个字符串,会当做一个css,也可跟一个函数

$(“#myform”).validate({

        
success:”valid”,

        submitHandler:function() 
{ alert(“Submitted!”) }

})

highlight:

可以给未通过验证的加勒比海盗元素加效果,闪烁等

addMethod(name,method,message)方法:

参数name是添加的加勒比海盗方法的加勒比海盗名字

参数method是一个函数,接收三个参数(value,element,param) 
value
是元素的加勒比海盗,element是元素本身 
param
是参数,加勒比海盗5们可以用addMethod来添加除built-in Validation 
methods
之外的加勒比海盗验证方法 比如有一个字段,只能输一个字母,范围是a-f,写法如下:

$.validator.addMethod(“af”,function(value,element,params){

   
if(value.length>1){

    return false;

   }

   if(value>=params[0] 
&& value<=params[1]){

    return true;

   }else{

    return false;

   }

},”必须是一个字母,a-f”);

用的加勒比海盗时候,比如有个表单字段的加勒比海盗id=”username”,则在加勒比海盗5rules中写

username:{

   af:[“a”,”f”]

}

addMethod加勒比海盗第一个参数,就是添加的加勒比海盗验证方法的加勒比海盗名子,这时是af

addMethod加勒比海盗第三个参数,就是自定义的加勒比海盗错误提示,这里的加勒比海盗提示为:”必须是一个字母,a-f”

addMethod加勒比海盗第二个参数,是一个函数,这个比较重要,决定了用这个验证方法时的加勒比海盗写法

如果只有一个参数,直接写,如果af:”a”,那么a就是这个唯一的加勒比海盗参数,如果多个参数,用在加勒比海盗5[],用逗号分开

meta String方式:

$(“#myform”).validate({

   meta:”validate”,

   submitHandler:function() { 
alert(“Submitted!”) }

})

<script type=”text/javascript” 
src=”js/jquery.metadata.js”></script>

<script type=”text/javascript” 
src=”js/jquery.validate.js”></script>

<form id=”myform”>

  <input type=”text” 
name=”email” class=”{validate:{ required:true,email:true }}” />

  <input type=”submit” 
value=”Submit” />

</form>

列子:

  1. <!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>  
  2. <html xmlns=“http://www.w3.org/1999/xhtml” >  
  3. <head runat=“server”>  
  4. <title>JQuery表单验证插件jQuery.validate.js</title>  
  5. <style type=“text/css”>  
  6. /******/  
  7. form.cmxform label.error, label.error {  
  8. color: red;  
  9. font-style: italic;  
  10. }  
  11. </style>  
  12. </head>  
  13. <script type=“text/javascript” src=“http://code.jquery.com/jquery-1.4.2.min.js”></script>  
  14. <script type=“text/javascript” src=“http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js”></script>  
  15. <body>  
  16. <form class=“cmxform” id=“commentForm” method=“get” action=“”>  
  17. <fieldset>  
  18. <legend>注册账号</legend>  
  19. <p>  
  20. <label for=“cusername”>用户名</label>  
  21. <input id=“username” name=“username” />  
  22. <p>  
  23. <label for=“cemail”>邮箱</label>  
  24. <input id=“email” name=“email” />  
  25. </p>  
  26. <p>  
  27. <label for=“cpassword”>密码</label>  
  28. <input type=“password” id=“password” name=“password” value=“” />  
  29. </p>  
  30. <p>  
  31. <label for=“cconfirm_password”>确认密码</label>  
  32. <input type=“password” id=“confirm_password” name=“confirm_password” value=“” />  
  33. </p>  
  34. <p>  
  35. <input class=“submit” type=“submit” value=“提交”/>  
  36. </p>  
  37. </fieldset>  
  38. </form>  
  39. </body>  
  40. </html>  
  41. <script type=“text/javascript” >  
  42.   
  43. .validator.setDefaults({&nbsp;&nbsp;</span></li><li class=””><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;submitHandler:&nbsp;function()&nbsp;{&nbsp;&nbsp;</span></li><li class=”alt”><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert(“已经提交!”);&nbsp;&nbsp;</span></li><li class=””><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li><li class=”alt”><span>});&nbsp;&nbsp;</span></li><li class=””><span>&nbsp;&nbsp;</span></li><li class=”alt”><span>().ready(function() {  
  44.       
  45.         $(“#commentForm”).validate({  
  46.                 rules: {  
  47.                     username: {  
  48.                             required:true,  
  49.                             minlength:2  
  50.                     },  
  51.                     email: {  
  52.                             required: true,  
  53.                             email: true  
  54.                     },  
  55.                     password: {  
  56.                         required: true,  
  57.                         minlength: 6  
  58.                     },  
  59.                     confirm_password: {  
  60.                         required: true,  
  61.                         minlength: 6,  
  62.                         equalTo: ”#password”  
  63.                     }  
  64.                 },  
  65.                 messages: {  
  66.                     username: {  
  67.                             required:”用户名必填”,  
  68.                             minlength:”至少2个字符”  
  69.                     },  
  70.                     email:”请输入一个邮件地址”,  
  71.                     password: {  
  72.                         required: ”请输入密码”,  
  73.                         minlength: ”密码不能少于6个字符”  
  74.                     },  
  75.                     confirm_password: {  
  76.                         required: ”请输入确认密码”,  
  77.                         minlength: ”确认密码不能少于6个字符”,  
  78.                         equalTo: ”密码输入不一致”  
  79.                     }  
  80.                 }  
  81.         });  
  82.   
  83. });  
  84. </script>  
<!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 runat="server"> <title>JQuery表单验证插件jQuery.validate.js</title> <style type="text/css"> /******/ form.cmxform label.error, label.error { color: red; font-style: italic; } </style> </head> <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script> <body> <form class="cmxform" id="commentForm" method="get" action=""> <fieldset> <legend>注册账号</legend> <p> <label for="cusername">用户名</label> <input id="username" name="username" /> <p> <label for="cemail">邮箱</label> <input id="email" name="email" /> </p> <p> <label for="cpassword">密码</label> <input type="password" id="password" name="password" value="" /> </p> <p> <label for="cconfirm_password">确认密码</label> <input type="password" id="confirm_password" name="confirm_password" value="" /> </p> <p> <input class="submit" type="submit" value="提交"/> </p> </fieldset> </form> </body> </html> <script type="text/javascript" >  $.validator.setDefaults({         submitHandler: function() {                 alert("已经提交!");         } });  $().ready(function() {          $("#commentForm").validate({                 rules: {                     username: {                             required:true,                             minlength:2                     },                     email: {                             required: true,                             email: true                     },                     password: {                         required: true,                         minlength: 6                     },                     confirm_password: {                         required: true,                         minlength: 6,                         equalTo: "#password"                     }                 },                 messages: {                     username: {                             required:"用户名必填",                             minlength:"至少2个字符"                     },                     email:"请输入一个邮件地址",                     password: {                         required: "请输入密码",                         minlength: "密码不能少于6个字符"                     },                     confirm_password: {                         required: "请输入确认密码",                         minlength: "确认密码不能少于6个字符",                         equalTo: "密码输入不一致"                     }                 }         });  }); </script>

官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation

jQuery plugin: Validation 使用说明  

转载自:http://blog.sina.com.cn/s/blog_608475eb0100h3h1.html

 

一导入js
<script src=”../js/jquery.js” type=”text/JavaScript“></script>
<script src=”../js/jquery.validate.js” type=”text/javascript“></script>

 

二、默认校验规则
(1)required:true                必输字段
(2)remote:”check.PHP“      使用ajax方法调用check.php验证输入值
(3)email:true                    必须输入正确格式的加勒比海盗电子邮件
(4)url:true                        必须输入正确格式的加勒比海盗网址
(5)date:true                      必须输入正确格式的加勒比海盗日期 日期校验ie6出错,慎用
(6)dateISO:true                必须输入正确格式的加勒比海盗日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
(7)number:true                 必须输入合法的加勒比海盗数字(负数,小数)
(8)digits:true                    必须输入整数
(9)creditcard:                   必须输入合法的加勒比海盗信用卡号
(10)equalTo:”#field”          输入值必须和#field相同
(11)accept:                       输入拥有合法后缀名的加勒比海盗字符串(上传文件的加勒比海盗后缀)
(12)maxlength:5               输入长度最多是5的加勒比海盗字符串(汉字算一个字符)
(13)minlength:10              输入长度最小是10的加勒比海盗字符串(汉字算一个字符)
(14)rangelength:[5,10]      输入长度必须介于 5 和 10 之间的加勒比海盗字符串”)(汉字算一个字符)
(15)range:[5,10]               输入值必须介于 5 和 10 之间
(16)max:5                        输入值不能大于5
(17)min:10                       输入值不能小于10

 

三、默认的加勒比海盗提示
messages: {
    required: “This field is required.”,
    remote: “Please fix this field.”,
    email: “Please enter a valid email address.”,
    url: “Please enter a valid URL.”,
    date: “Please enter a valid date.”,
    dateISO: “Please enter a valid date (ISO).”,
    dateDE: “Bitte geben Sie ein g眉ltiges Datum ein.”,
    number: “Please enter a valid number.”,
    numberDE: “Bitte geben Sie eine Nummer ein.”,
    digits: “Please enter only digits”,
    creditcard: “Please enter a valid credit card number.”,
    equalTo: “Please enter the same value again.”,
    accept: “Please enter a value with a valid extension.”,
    maxlength: .validator.format(Pleaseenternomorethan0characters.),minlength:.validator.format(“Please enter at least {0} characters.”),
    rangelength: .validator.format(Pleaseenteravaluebetween0and1characterslong.),range:.validator.format(“Please enter a value between {0} and {1}.”),
    max: .validator.format(Pleaseenteravaluelessthanorequalto0.),min:.validator.format(“Please enter a value greater than or equal to {0}.”)
},

如需要修改,可在加勒比海盗5js代码中加入:

jQuery.extend(jQuery.validator.messages, {
  required: “必选字段”,
  remote: “请修正该字段”,
  email: “请输入正确格式的加勒比海盗电子邮件”,
  url: “请输入合法的加勒比海盗网址”,
  date: “请输入合法的加勒比海盗日期”,
  dateISO: “请输入合法的加勒比海盗日期 (ISO).”,
  number: “请输入合法的加勒比海盗数字”,
  digits: “只能输入整数”,
  creditcard: “请输入合法的加勒比海盗信用卡号”,
  equalTo: “请再次输入相同的加勒比海盗值”,
  accept: “请输入拥有合法后缀名的加勒比海盗字符串”,
  maxlength: jQuery.validator.format(“请输入一个 长度最多是 {0} 的加勒比海盗字符串”),
  minlength: jQuery.validator.format(“请输入一个 长度最少是 {0} 的加勒比海盗字符串”),
  rangelength: jQuery.validator.format(“请输入 一个长度介于 {0} 和 {1} 之间的加勒比海盗字符串”),
  range: jQuery.validator.format(“请输入一个介于 {0} 和 {1} 之间的加勒比海盗值”),
  max: jQuery.validator.format(“请输入一个最大为{0} 的加勒比海盗值”),
  min: jQuery.validator.format(“请输入一个最小为{0} 的加勒比海盗值”)
});

推荐做法,将此文件放入messages_cn.js中,在加勒比海盗5页面中引入
<script src=”../js/messages_cn.js” type=”text/javascript”></script>

 

四、使用方式
1.将校验规则写到控件中

jQuery验证控件jquery.validate.js使用说明+中文API
<script src=”../js/jquery.js” type=”text/javascript”></script>
<script src=”../js/jquery.validate.js” type=”text/javascript”></script>
<script src=”./js/jquery.metadata.js” type=”text/javascript”></script>

().ready(function() {(“#signupForm”).validate();
});

<form id=”signupForm” method=”get” action=”“>
    <p>
        <label for=”firstname”>Firstname</label>
        <input id=”firstname” name=”firstname” class=”required” />
    </p>
 <p>
  <label for=”email”>E-Mail</label>
  <input id=”email” name=”email” class=”required email” />
 </p>
 <p>
  <label for=”password”>Password</label>
  <input id=”password” name=”password” type=”password” class=”{required:true,minlength:5}” />
 </p>
 <p>
  <label for=”confirm_password”>确认密码</label>
  <input id=”confirm_password” name=”confirm_password” type=”password” class=”{required:true,minlength:5,equalTo:’#password’}” />
 </p>
    <p>
        <input class=”submit” type=”submit” value=”Submit”/>
    </p>
</form>

jQuery验证控件jquery.validate.js使用说明+中文API

使用class=”{}”的加勒比海盗方式,必须引入包:jquery.metadata.js

可以使用如下的加勒比海盗方法,修改提示内容:
class=”{required:true,minlength:5,messages:{required:’请输入内容’}}”

加勒比海盗5使用equalTo关键字时,后面的加勒比海盗内容必须加上引号,如下代码:
class=”{required:true,minlength:5,equalTo:’#password’}”

 

2.将校验规则写到js代码中

jQuery验证控件jquery.validate.js使用说明+中文API
$().ready(function() {
 $(“#signupForm”).validate({
        rules: {
   firstname: “required”,
   email: {
    required: true,
    email: true
   },
   password: {
    required: true,
    minlength: 5
   },
   confirm_password: {
    required: true,
    minlength: 5,
    equalTo: ”#password”
   }
  },
        messages: {
   firstname: ”请输入姓名”,
   email: {
    required: ”请输入Email地址”,
    email: ”请输入正确的加勒比海盗email地址”
   },
   password: {
    required: ”请输入密码”,
    minlength: jQuery.format(“密码不能小于{0}个字 符”)
   },
   confirm_password: {
    required: ”请输入确认密码”,
    minlength: ”确认密码不能小于5个字符”,
    equalTo: ”两次输入密码不一致不一致”
   }
  }
    });
});
jQuery验证控件jquery.validate.js使用说明+中文API

//messages处,如果某个控件没有message,将调用默认的加勒比海盗信息

jQuery验证控件jquery.validate.js使用说明+中文API
<form id=”signupForm” method=”get” action=”“>
    <p>
        <label for=”firstname”>Firstname</label>
        <input id=”firstname” name=”firstname” />
    </p>
 <p>
  <label for=”email”>E-Mail</label>
  <input id=”email” name=”email” />
 </p>
 <p>
  <label for=”password”>Password</label>
  <input id=”password” name=”password” type=”password” />
 </p>
 <p>
  <label for=”confirm_password”>确认密码</label>
  <input id=”confirm_password” name=”confirm_password” type=”password” />
 </p>
    <p>
        <input class=”submit” type=”submit” value=”Submit”/>
    </p>
</form>
jQuery验证控件jquery.validate.js使用说明+中文API

 

required:true 必须有值
required:”#aa:checked”表达式的加勒比海盗值为真,则需要验证
required:function(){}返回为真,表时需要验证
后边两种常用于,表单中需要同时填或不填的加勒比海盗元素

 

五、常用方法及注意问题
1.用其他方式替代默认的加勒比海盗SUBMIT
().ready(function() {(“#signupForm”).validate({
        submitHandler:function(form){
            alert(“submitted”);   
            form.submit();
        }    
    });
});

使用ajax方式

 (“.selector”).validate({      
 submitHandler: function(form)  
   {
(form).ajaxSubmit();     
   }  
 }) 

可以设置validate的加勒比海盗默认值,写法如下:
$.validator.setDefaults({
 submitHandler: function(form) { alert(“submitted!”);form.submit(); }
});

如果想提交表单, 需要使用form.submit()而不要使用$(form).submit()

2.debug,只验证不提交表单
如果这个参数为true,那么表单不会提交,只进行检查,调试时十分方便

().ready(function() { 
 $(“#signupForm”).validate({ 
        debug:true 
    }); 
}); 
如果一个页面中有多个表单都想设置成为debug,用
.validator.setDefaults({
   debug: true
})

3.ignore:忽略某些元素不验证
ignore: “.ignore”
4.更改错误信息显示的加勒比海盗位置
errorPlacement:Callback

 Default: 把错误信息放在加勒比海盗5验证的加勒比海盗元素后面 
指明错误放置的加勒比海盗位置,默认情况是:error.appendTo(element.parent());即把错误信息放在加勒比海盗5验证的加勒比海盗元素后面 
errorPlacement: function(error, element) {  
    error.appendTo(element.parent());  
}

//示例:

jQuery验证控件jquery.validate.js使用说明+中文API
<tr>
    <td class=”label”><label id=”lfirstname” for=”firstname”>First Name</label></td>
    <td class=”field”><input id=”firstname” name=”firstname” type=”text” value=”“ maxlength=”100” /></td>
    <td class=”status”></td>
</tr>
<tr>
    <td style=”padding-right: 5px;”>
        <input id=”dateformat_eu” name=”dateformat” type=”radio” value=”0” />
        <label id=”ldateformat_eu” for=”dateformat_eu”>14/02/07</label>
    </td>
    <td style=”padding-left: 5px;”>
        <input id=”dateformat_am” name=”dateformat” type=”radio” value=”1”  />
        <label id=”ldateformat_am” for=”dateformat_am”>02/14/07</label>
    </td>
    <td></td>
</tr>
<tr>
    <td class=”label”>&nbsp;</td>
    <td class=”field” colspan=”2”>
        <div id=”termswrap”>
            <input id=”terms” type=”checkbox” name=”terms” />
            <label id=”lterms” for=”terms”>I have read and accept the Terms of Use.</label>
        </div>
    </td>
</tr>

errorPlacement: function(error, element) {
    if ( element.is(“:radio”) )
        error.appendTo( element.parent().next().next() );
    else if ( element.is(“:checkbox”) )
        error.appendTo ( element.next() );
    else
        error.appendTo( element.parent().next() );
}

jQuery验证控件jquery.validate.js使用说明+中文API

代码的加勒比海盗作用是:一般情况下把错误信息显示在加勒比海盗5<td class=”status”></td>中,如果是radio显示在加勒比海盗5<td></td>中,如果是 checkbox显示在加勒比海盗5内容的加勒比海盗后面

errorClass:String  Default: “error” 
指定错误提示的加勒比海盗css类名,可以自定义错误提示的加勒比海盗样式

errorElement:String  Default: “label” 
用什么标签标记错误,默认的加勒比海盗是label你可以改成em

errorContainer:Selector 
显示或者隐藏验证信息,可以自动实现有错误信息出现时把容器属性变为显示,无错误时隐藏,用处不大
errorContainer: “#messageBox1, #messageBox2”

errorLabelContainer:Selector
把错误信息统一放在加勒比海盗5一个容器里面。

wrapper:String
用什么标签再把上边的加勒比海盗errorELement包起来

一般这三个属性同时使用,实现在加勒比海盗5一个容器内显示所有错误提示的加勒比海盗功能,并且没有信息时自动隐藏

errorContainer: “div.error”,
errorLabelContainer: $(“#signupForm div.error”),
wrapper: “li”

5更改错误信息显示的加勒比海盗样式
设置错误提示的加勒比海盗样式,可以增加图标显示,在加勒比海盗5该系统中已经建立了一个validation.css专门用于维护校验文件的加勒比海盗样式

 

input.error { border: 1px solid red; }
label.error {
  background:url(“./demo/images/unchecked.gif”) no-repeat 0px 0px;

  padding-left: 16px;

  padding-bottom: 2px;

  font-weight: bold;

  color: #EA5200;
}
label.checked {
  background:url(“./demo/images/checked.gif”) no-repeat 0px 0px;
}

6每个字段验证通过执行函数
success:String,Callback
要验证的加勒比海盗元素通过验证后的加勒比海盗动作,如果跟一个字符串,会当做一个css类,也可跟一个函数
success: function(label) {
    // set &nbsp; as text for IE
    label.html(“&nbsp;”).addClass(“checked”);
    //label.addClass(“valid”).text(“Ok!”)
}
添加”valid” 到验证元素, 在加勒比海盗5CSS中定义的加勒比海盗样式<style>label.valid {}</style>
success: “valid”

 

7验证的加勒比海盗触发方式修改
下面的加勒比海盗虽然是boolean型的加勒比海盗,但建议除非要改为false,否则别乱添加。

onsubmit:Boolean  Default: true 
提交时验证. 设置唯false就用其他方法去验证
onfocusout:Boolean  Default: true 
失去焦点是验证(不包括checkboxes/radio buttons)
onkeyup:Boolean  Default: true 
加勒比海盗5keyup时验证.
onclick:Boolean  Default: true 
加勒比海盗5checkboxes 和 radio 点击时验证
focusInvalid:Boolean  Default: true 
提交表单后,未通过验证的加勒比海盗表单(第一个或提交之前获得焦点的加勒比海盗未通过验证的加勒比海盗表单)会获得焦点
focusCleanup:Boolean  Default: false 
如果是true那么当未通过验证的加勒比海盗元素获得焦点时,移除错误提示。避免和 focusInvalid 一起用

 

// 重置表单
().ready(function() { 
 var validator =
(“#signupForm”).validate({
        submitHandler:function(form){
            alert(“submitted”);   
            form.submit();
        }    
    });
    $(“#reset”).click(function() {
        validator.resetForm();
    });

});

8异步验证
remote:URL
使用ajax方式进行验证,默认会提交当前验证的加勒比海盗值到远程地址,如果需要提交其他的加勒比海盗值,可以使用data选项

remote: “check-email.php”

remote: {
    url: “check-email.php”,     //后台处理程序
    type: “post”,               //数据发送方式
    dataType: “json”,           //接受数据格式   
    data: {                     //要传递的加勒比海盗数据
        username: function() {
            return $(“#username”).val();
        }
    }
}

远程地址只能输出 “true” 或 “false”,不能有其它输出

 

9添加自定义校验
addMethod:name, method, message
自定义验证方法

// 中文字两个字节
jQuery.validator.addMethod(“byteRangeLength”, function(value, element, param) {
    var length = value.length;
    for(var i = 0; i < value.length; i++){
        if(value.charCodeAt(i) > 127){
            length++;
        }
    }
  return this.optional(element) || ( length >= param[0] && length <= param[1] );   
}, $.validator.format(“请确保输入的加勒比海盗值在加勒比海盗5{0}-{1}个字节之间(一个中文字算2个字节)”));

// 邮政编码验证   
jQuery.validator.addMethod(“isZipCode”, function(value, element) {   
    var tel = /^[0-9]{6}$/;
    return this.optional(element) || (tel.test(value));
}, “请正确填写您的加勒比海盗邮政编码”);

 

1.要在加勒比海盗5additional-methods.js文件中添加或者在加勒比海盗5jquery.validate.js添加
建议一般写在加勒比海盗5additional-methods.js文件中

2.在加勒比海盗5messages_cn.js文件添加:isZipCode: “只能包括中文字、英文字母、数字和下划线”,

调用前要添加对additional-methods.js文件的加勒比海盗引用。

 

 

10radio和checkbox、select的加勒比海盗验证
 

1.radio的加勒比海盗required表示必须选中一个
<input  type=”radio” id=”gender_male” value=”m” name=”gender” class=”{required:true}” />
<input  type=”radio” id=”gender_female” value=”f” name=”gender”/>

 

2.checkbox的加勒比海盗required表示必须选中
<input type=”checkbox” class=”checkbox” id=”agree” name=”agree” class=”{required:true}” />

checkbox的加勒比海盗minlength表示必须选中的加勒比海盗最小个数,maxlength表示最大的加勒比海盗选中个数,rangelength:[2,3]表 示选中个数区间

<input type=”checkbox” class=”checkbox” id=”spam_email” value=”email” name=”spam[]” class=”{required:true, minlength:2}” />
<input type=”checkbox” class=”checkbox” id=”spam_phone” value=”phone” name=”spam[]” />
<input type=”checkbox” class=”checkbox” id=”spam_mail” value=”mail” name=”spam[]” />

 

    3.select的加勒比海盗required表示选中的加勒比海盗value不能为空
<select id=”jungle” name=”jungle” title=”Please select something!” class=”{required:true}”>
    <option value=”“></option>
    <option value=”1”>Buga</option>
    <option value=”2”>Baga</option>
    <option value=”3”>Oi</option>
</select>

 

select的加勒比海盗minlength表示选中的加勒比海盗最小个数(可多选的加勒比海盗select),maxlength表示最大的加勒比海盗选中个 数,rangelength:[2,3]表示选中个数区间
<select id=”fruit” name=”fruit” title=”Please select at least two fruits” class=”{required:true, minlength:2}” multiple=”multiple”>
    <option value=”b”>Banana</option>
    <option value=”a”>Apple</option>
    <option value=”p”>Peach</option>
    <option value=”t”>Turtle</option>
</select>

 

 

jQuery.validate 中文API   

名称

返回类型

描述

validate(options)

返回:Validator

验证所选的加勒比海盗FORM

valid()

返回:Boolean

检查是否验证通过

rules()

返回:Options

返回元素的加勒比海盗验证规则

rules(“add”,rules)

返回:Options

增加验证规则

rules(“remove”,rules)

返回:Options

删除验证规则

removeAttrs(attributes)

返回:Options

删除特殊属性并且返回他们

Custom selectors

:blank

返回:Validator

没有值的加勒比海盗筛选器

:filled

返回:Array <Element 
>

有值的加勒比海盗筛选器

:unchecked

返回:Array <Element 
>

没选择的加勒比海盗元素的加勒比海盗筛选器

Utilities

jQuery.format

(template,argument 
,argumentN…)

返回:String

用参数代替模板中的加勒比海盗 
{n}

Validator:

validate方法返回一个Validator对象,它有很多方法让你能使用引发校验程序或者改变form加勒比海盗内容. validator对象有很多方法,但下面只是列出常用的加勒比海盗

form()

返回:Boolean

验证form返回成功还是失败

element(element)

返回:Boolean

验证单个元素是成功还是失败

resetForm()

返回:undefined

把前面验证的加勒比海盗FORM恢复到验证前原来的加勒比海盗状态

showErrors(errors)

返回:undefined

显示特定的加勒比海盗错误信息

Validator functions:

setDefaults(defaults)

返回:undefined

改变默认的加勒比海盗设置

addMethod(name,method,message)

返回:undefined

添加一个新的加勒比海盗验证方法必须包括一个独一无二的加勒比海盗名字,一个JAVASCRIPT加勒比海盗方法和一个默认的加勒比海盗信息

addClassRules(name,rules)

返回:undefined

增加组合验证类型 在加勒比海盗5一个类里面用多种验证方法里比较有用

addClassRules(rules)

返回:undefined

增加组合验证类型 在加勒比海盗5一个类里面用多种验证方法里比较有用,这个是一下子加多个

内置验证方式:

required()

返回:Boolean

必填验证元素

required(dependency-expression)

返回:Boolean

必填元素依赖于表达式的加勒比海盗结果

required(dependency-callback)

返回:Boolean

必填元素依赖于回调函数的加勒比海盗结果

remote(url)

返回:Boolean

请求远程校验。url通常是一个远程调用方法

minlength(length)

返回:Boolean

设置最小长度

maxlength(length)

返回:Boolean

设置最大长度

rangelength(range)

返回:Boolean

设置一个长度范围[min,max]

min(value)

返回:Boolean

设置最大值

max(value)

返回:Boolean

设置最小值

email()

返回:Boolean

验证电子邮箱格式

range(range)

返回:Boolean

设置值的加勒比海盗范围

url()

返回:Boolean

验证URL格式

date()

返回:Boolean

验证日期格式(类似30/30/2008加勒比海盗格式,不验证日期准确性只验证格式)

dateISO()

返回:Boolean

验证ISO类型的加勒比海盗日期格式

dateDE()

返回:Boolean

验证德式的加勒比海盗日期格式(29.04.1994 or 
1.1.2006

number()

返回:Boolean

验证十进制数字(包括小数的加勒比海盗

digits()

返回:Boolean

验证整数

creditcard()

返回:Boolean

验证信用卡号

accept(extension)

返回:Boolean

验证相同后缀名的加勒比海盗字符串

equalTo(other)

返回:Boolean

验证两个输入框的加勒比海盗内容是否相同

phoneUS()

返回:Boolean

验证美式的加勒比海盗电话号码

validate ()加勒比海盗可选项:

debug:进行调试模式(表单不提交):

$(“.selector”).validate

({

   debug:true

})

把调试设置为默认:

$.validator.setDefaults({

   debug:true

})

submitHandler:

通过验证后运行的加勒比海盗函数,里面要加上表单提交的加勒比海盗函数,否则表单不会提交

$(“.selector”).validate({

   submitHandler:function(form) 
{

$(form).ajaxSubmit();

   }

})

ignore:

对某些元素不进行验证

$(“#myform”).validate({

   ignore:”.ignore”

})

rules:

自定义规则,key:value加勒比海盗形式,key是要验证的加勒比海盗元素,value可以是字符串或对象

$(“.selector”).validate({

   rules:{

     name:”required”,

     email:{

       required:true,

       email:true

     }

   }

})

messages:

自定义的加勒比海盗提示信息key:value加勒比海盗形式key是要验证的加勒比海盗元素,值是字符串或函数

$(“.selector”).validate({

   rules:{

     name:”required”,

     email:{

       required:true,

       email:true

     }

   },

   messages:{

     name:”Name不能为空”,

     email:{

       
required:”E-mail
不能为空”,

       email:”E-mail地址不正确

     }

   }

})

groups:

对一组元素的加勒比海盗验证,用一个错误提示,error Placement控制把出错信息放在加勒比海盗5哪里

$(“#myform”).validate({

  groups:{

    username:”fname 
lname”

  },

  
errorPlacement:function(error,element) {

     if (element.attr(“name”) == 
“fname” || element.attr(“name”) == “lname”)

       
error.insertAfter(“#lastname”);

     else

       
error.insertAfter(element);

   },

   debug:true

})

Onubmit Boolean 默认:true

是否提交时验证

$(“.selector”).validate({

   
onsubmit:false

})

onfocusout Boolean 默认:true  

是否在加勒比海盗5获取焦点时验证

$(“.selector”).validate({

   
onfocusout:false

})

onkeyup Boolean 默认:true  

是否在加勒比海盗5敲击键盘时验证

$(“.selector”).validate({

   onkeyup:false

})

onclick Boolean 默认:true

是否在加勒比海盗5鼠标点击时验证(一般验证checkbox,radiobox

$(“.selector”).validate({

   onclick:false

})

focusInvalid Boolean 默认:true

提交表单后,未通过验证的加勒比海盗表单(第一个或提交之前获得焦点的加勒比海盗未通过验证的加勒比海盗表单)会获得焦点

$(“.selector”).validate({

   focusInvalid:false

})

focusCleanup Boolean 默认:false

当未通过验证的加勒比海盗元素获得焦点时,并移除错误提示(避免和 focusInvalid.一起使用)

$(“.selector”).validate({

   focusCleanup:true

})

errorClass String 默认:”error”

指定错误提示的加勒比海盗css类名,可以自定义错误提示的加勒比海盗样式

$(“.selector”).validate({

   
errorClass:”invalid”

})

errorElement String 默认:”label”

使用什么标签标记错误

$(“.selector”).validate

   errorElement:”em”

})

wrapper String

使用什么标签再把上边的加勒比海盗errorELement包起来

$(“.selector”).validate({

   wrapper:”li”

})

errorLabelContainer Selector

把错误信息统一放在加勒比海盗5一个容器里面

$(“#myform”).validate({

   
errorLabelContainer:”#messageBox”,

   wrapper:”li”,

   submitHandler:function() { 
alert(“Submitted!”) }

})

showErrors:

跟一个函数,可以显示总共有多少个未通过验证的加勒比海盗元素

$(“.selector”).validate({

   
showErrors:function(errorMap,errorList) {

        $(“#summary”).html(“Your 
form contains ” + this.numberOfInvalids() + ” errors,see details 
below.”);

        
this.defaultShowErrors();

   }

})

errorPlacement:

跟一个函数,可以自定义错误放到哪里

$(“#myform”).validate({

  
rrorPlacement:function(error,element) {  
error.appendTo(element.parent(“td”).next(“td”));

   },

   debug:true

})

success:

要验证的加勒比海盗元素通过验证后的加勒比海盗动作,如果跟一个字符串,会当做一个css,也可跟一个函数

$(“#myform”).validate({

        
success:”valid”,

        submitHandler:function() 
{ alert(“Submitted!”) }

})

highlight:

可以给未通过验证的加勒比海盗元素加效果,闪烁等

addMethod(name,method,message)方法:

参数name是添加的加勒比海盗方法的加勒比海盗名字

参数method是一个函数,接收三个参数(value,element,param) 
value
是元素的加勒比海盗,element是元素本身 
param
是参数,加勒比海盗5们可以用addMethod来添加除built-in Validation 
methods
之外的加勒比海盗验证方法 比如有一个字段,只能输一个字母,范围是a-f,写法如下:

$.validator.addMethod(“af”,function(value,element,params){

   
if(value.length>1){

    return false;

   }

   if(value>=params[0] 
&& value<=params[1]){

    return true;

   }else{

    return false;

   }

},”必须是一个字母,a-f”);

用的加勒比海盗时候,比如有个表单字段的加勒比海盗id=”username”,则在加勒比海盗5rules中写

username:{

   af:[“a”,”f”]

}

addMethod加勒比海盗第一个参数,就是添加的加勒比海盗验证方法的加勒比海盗名子,这时是af

addMethod加勒比海盗第三个参数,就是自定义的加勒比海盗错误提示,这里的加勒比海盗提示为:”必须是一个字母,a-f”

addMethod加勒比海盗第二个参数,是一个函数,这个比较重要,决定了用这个验证方法时的加勒比海盗写法

如果只有一个参数,直接写,如果af:”a”,那么a就是这个唯一的加勒比海盗参数,如果多个参数,用在加勒比海盗5[],用逗号分开

meta String方式:

$(“#myform”).validate({

   meta:”validate”,

   submitHandler:function() { 
alert(“Submitted!”) }

})

<script type=”text/javascript” 
src=”js/jquery.metadata.js”></script>

<script type=”text/javascript” 
src=”js/jquery.validate.js”></script>

<form id=”myform”>

  <input type=”text” 
name=”email” class=”{validate:{ required:true,email:true }}” />

  <input type=”submit” 
value=”Submit” />

</form>

列子:

  1. <!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>  
  2. <html xmlns=“http://www.w3.org/1999/xhtml” >  
  3. <head runat=“server”>  
  4. <title>JQuery表单验证插件jQuery.validate.js</title>  
  5. <style type=“text/css”>  
  6. /******/  
  7. form.cmxform label.error, label.error {  
  8. color: red;  
  9. font-style: italic;  
  10. }  
  11. </style>  
  12. </head>  
  13. <script type=“text/javascript” src=“http://code.jquery.com/jquery-1.4.2.min.js”></script>  
  14. <script type=“text/javascript” src=“http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js”></script>  
  15. <body>  
  16. <form class=“cmxform” id=“commentForm” method=“get” action=“”>  
  17. <fieldset>  
  18. <legend>注册账号</legend>  
  19. <p>  
  20. <label for=“cusername”>用户名</label>  
  21. <input id=“username” name=“username” />  
  22. <p>  
  23. <label for=“cemail”>邮箱</label>  
  24. <input id=“email” name=“email” />  
  25. </p>  
  26. <p>  
  27. <label for=“cpassword”>密码</label>  
  28. <input type=“password” id=“password” name=“password” value=“” />  
  29. </p>  
  30. <p>  
  31. <label for=“cconfirm_password”>确认密码</label>  
  32. <input type=“password” id=“confirm_password” name=“confirm_password” value=“” />  
  33. </p>  
  34. <p>  
  35. <input class=“submit” type=“submit” value=“提交”/>  
  36. </p>  
  37. </fieldset>  
  38. </form>  
  39. </body>  
  40. </html>  
  41. <script type=“text/javascript” >  
  42.   
  43. .validator.setDefaults({&nbsp;&nbsp;</span></li><li class=””><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;submitHandler:&nbsp;function()&nbsp;{&nbsp;&nbsp;</span></li><li class=”alt”><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert(“已经提交!”);&nbsp;&nbsp;</span></li><li class=””><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;</span></li><li class=”alt”><span>});&nbsp;&nbsp;</span></li><li class=””><span>&nbsp;&nbsp;</span></li><li class=”alt”><span>().ready(function() {  
  44.       
  45.         $(“#commentForm”).validate({  
  46.                 rules: {  
  47.                     username: {  
  48.                             required:true,  
  49.                             minlength:2  
  50.                     },  
  51.                     email: {  
  52.                             required: true,  
  53.                             email: true  
  54.                     },  
  55.                     password: {  
  56.                         required: true,  
  57.                         minlength: 6  
  58.                     },  
  59.                     confirm_password: {  
  60.                         required: true,  
  61.                         minlength: 6,  
  62.                         equalTo: ”#password”  
  63.                     }  
  64.                 },  
  65.                 messages: {  
  66.                     username: {  
  67.                             required:”用户名必填”,  
  68.                             minlength:”至少2个字符”  
  69.                     },  
  70.                     email:”请输入一个邮件地址”,  
  71.                     password: {  
  72.                         required: ”请输入密码”,  
  73.                         minlength: ”密码不能少于6个字符”  
  74.                     },  
  75.                     confirm_password: {  
  76.                         required: ”请输入确认密码”,  
  77.                         minlength: ”确认密码不能少于6个字符”,  
  78.                         equalTo: ”密码输入不一致”  
  79.                     }  
  80.                 }  
  81.         });  
  82.   
  83. });  
  84. </script>  
<!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 runat="server"> <title>JQuery表单验证插件jQuery.validate.js</title> <style type="text/css"> /******/ form.cmxform label.error, label.error { color: red; font-style: italic; } </style> </head> <script type="text/javascript" src="http://code.jquery.com/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script> <body> <form class="cmxform" id="commentForm" method="get" action=""> <fieldset> <legend>注册账号</legend> <p> <label for="cusername">用户名</label> <input id="username" name="username" /> <p> <label for="cemail">邮箱</label> <input id="email" name="email" /> </p> <p> <label for="cpassword">密码</label> <input type="password" id="password" name="password" value="" /> </p> <p> <label for="cconfirm_password">确认密码</label> <input type="password" id="confirm_password" name="confirm_password" value="" /> </p> <p> <input class="submit" type="submit" value="提交"/> </p> </fieldset> </form> </body> </html> <script type="text/javascript" >  $.validator.setDefaults({         submitHandler: function() {                 alert("已经提交!");         } });  $().ready(function() {          $("#commentForm").validate({                 rules: {                     username: {                             required:true,                             minlength:2                     },                     email: {                             required: true,                             email: true                     },                     password: {                         required: true,                         minlength: 6                     },                     confirm_password: {                         required: true,                         minlength: 6,                         equalTo: "#password"                     }                 },                 messages: {                     username: {                             required:"用户名必填",                             minlength:"至少2个字符"                     },                     email:"请输入一个邮件地址",                     password: {                         required: "请输入密码",                         minlength: "密码不能少于6个字符"                     },                     confirm_password: {                         required: "请输入确认密码",                         minlength: "确认密码不能少于6个字符",                         equalTo: "密码输入不一致"                     }                 }         });  }); </script>

http://blog.csdn.net/u010758410/article/details/74025311加勒比海盗5

Jquery实现按回车调用别的单击事件(如按回车进行搜索)

  1. script type="text/javascript">     
  2.         $().ready(function () {  
  3.             $("#txt_search").keydown(function (e) {   
  4.                 var keyCode = e.keyCode ? e.keyCode : e.which ? e.which : e.charCode; //兼容IE 火狐 谷歌  
  5.                 if (keyCode == 13) {  
  6.                     $("#span_search").trigger("click");  
  7.                     return false;  
  8.                 }  
  9.             });  
  10.         })  
  11.         function search() {  
  12.             if ($("#txt_search").val().trim() != '') {  
  13.                 window.location.href = 'carlist.aspx?key=0-0-' + escape('' + $("#txt_search").val() + '') + '-0-0';  
  14.             }  
  15.             else {  
  16.                 $("#txt_search").focus();  
  17.                 alert('请输入关键字');  
  18.                   
  19.             }  
  20.         }  
  21.     </script>  

[html] view plain copy
  1. <div class="banner-search">  
  2.      <input type="text" class="form-control dropdown-toggle" placeholder="请输入要买的加勒比海盗品牌或车型" id="txt_search" />  
  3.      <i class="glyphicon glyphicon-search"></i>  
  4.      <span title="搜索" class="banner-search-btn" id="span_search" onclick="return search();">搜索</span>  
  5. </div>  

下面这是取消页面上只有一个submit(或者button)时,在加勒比海盗5文本框里按回车会触发提交事件

[javascript] view plain copy
  1. document.onkeydown = function (e) {  
  2.             var e = e || event;  
  3.             if (e.keyCode == 13) {  
  4.                 setTimeout(function () {  
  5.                     ;//什么都不做  
  6.                 }, 0);  
  7.                 e.preventDefault ? e.preventDefault() : (e.returnValue = false);  
  8.             }  
  9.         }  

http://blog.csdn.net/hnfy920/article/details/74025049加勒比海盗5

jq 判断元素到窗口底部的距离

$(window).height();//是文档窗口高度
$("div").offset().top//是标签距离顶部高度
$(document).scrollTop();//是滚动条高度
$("div").height();//是标签高度
你要的加勒比海盗高度+$("div").height()+[$("div").offset().top-$(document).scrollTop()]=$(window).height();

经过简单的加勒比海盗数学变换即可得到你要的加勒比海盗值了
加勒比海盗5结合http://blog.sina.com.cn/s/blog_141f2f34a0102vmxh.html 就明白了

http://blog.csdn.net/lpandeng/article/details/74025322加勒比海盗5