iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >如何用jQuery重写表单验证
  • 789
分享到

如何用jQuery重写表单验证

2024-04-02 19:04:59 789人浏览 八月长安
摘要

这篇文章主要讲解了“如何用Jquery重写表单验证”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用jQuery重写表单验证”吧!前面我们曾介绍过使用jQ

这篇文章主要讲解了“如何用Jquery重写表单验证”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用jQuery重写表单验证”吧!

前面我们曾介绍过使用jQuery技巧来提高代码质量,因为jQuery非常容易上手并使用简单。重写表单验证是程序员们经常做的事情,使用jQuery我们有五种方法可以选择,同时也能够解决乱码的问题。

首先,对编码知识进行简要的说明,请务必理解后再看下面的代码。发送中文字符请求时,如果使用get方式,运行正常;而使用post方法则会出现乱码。这是由于异步对象XMLHttpRequest在处理返回的responseText的时候,是按UTF-8编码进行解码的。

如果你原来的网页编码是gb2312的话,当然会发生编码的冲突了;如果你原来的网页编码是utf-8,那么就不会出现中文乱码的问题了。

出现了中文乱码该怎么办呢?通常的解决办法是用escape()对发送的数据进行编码,然后在返回的responseText上再用unescape()进行解码。然而在javascript编程中通常不推荐使用escape()和unescape(),而推荐使用encodeURI()和decodeURI()。请看下面的“表单验证实例”,或许对你学习编码知识有一定的帮助。

***、jQuery的load(url,[data],[callback])方法

语法说明:url为异步请求的地址,data用来向服务器传送请求数据,为可选参数。一旦data参数启用,整个请求过程将以post的方式进行,否则默认为get方式。如果希望在get方式下也传递数据,可以在url地址后面用类似“dataname1=data1&dataName2=data2”的方法。

callback为ajax加载成功后运行的回调函数。另外使用load()方法返回的数据,不再需要考虑是文本还是XML,jQuery都会自动进行处理。好了,下面马上使用load()方法实现“自动表单验证”实例。首先是,html框架,5个例子都是一样的,如下:

<fORM>   用户昵称:<input type="text" onblur="startCheck(this)" name="User" id="User"><span id="UserResult"></span><br />   输入密码:<input type="passWord" name="passwd1"><br />   确认密码:</td><td><input type="password" name="passwd2"><br />   <input type="submit" value="注册" class="button">   <input type="reset" value="重置" class="button">   </form>

必要说明:

1、onblur="startCheck(this)" 这是JavaScript代码(简称js) ,意思是text文本框失去焦点时触发自定义函数startCheck(),this是指代text文本框的值。

2、<span id="UserResult"></span>用来存放异步对象返回的结果。

jQuery代码如下:   <script language="javascript" src="jquery.min.js"></script>   <script language="javascript">   function startCheck(oInput){       //首先判断是否有输入,没有输入直接返回,并提示       if(!oInput.value){           oInput.focus(); //聚焦到用户名的输入框           document.getElementById("UserResult").innerHTML = "User cannot be empty.";           return;       }       oInput=$.trim(oInput.value); //使用jQuery的$.trim()方法过滤左右空格       var sUrl = "action.asp?user=" + oInput;       sUrl=encodeURI(sUrl); //使用encodeURI()编码,解决中文乱码问题       $("#UserResult").load(sUrl,function(data){           $("#UserResult").html(decodeURI(data)); //使用decodeURI()解码           }       );   }   </script>

必要说明:

1、使用jQuery时,都必须加载jquery.min.js文件,可以到http://jquery.com/官网下载***的版本。

2、判断是否有输入时,用的全是JavaScript语法。

3、对传递给“处理页”的参数进行encodeURI编码,以解决中文乱码问题。

4、load()中的function函数是为了对返回结果进行decodeURI解码,以解决中文乱码问题。

5、对$.trim()、$("#UserResult")、html等jQuery语法不理解的,可以参考jQuery中文手册。本站提供下载。

action.asp处理页代码如下:   <%   if(Request("user")="eko") then   Response.Write "Sorry, " & Request("user") & " already exists."   else   Response.Write Request("user")&" is ok."   end if   %>

必要说明:

1、action.asp处理页的编码是GB2312,如果把"Sorry..already exists..is ik"等英文改为中文,请看下面的说明。

2、使用post方法会出现乱码,这是由于异步对象XMLHttpRequest在处理返回的responseText的时候,是按UTF-8编码进行解码的。

3、所以post方式的话,必须把action.asp页另存为时,第三项的编码由 ANST 改为 UTF-8 (请务必记住!!)。

第二、使用$.get(url,[data],[callback])和$.post(url,[data],[callback])方法

语法说明:尽管load()方法可以实现get和post两种方式,但很多时候开发者还是希望能够指定发送方式,并且处理服务器返回的值。jQuery提供了$.get()和$.post()两种方法,分别针对这两种请求方式。

其中,url为请求地址,data为请求数据的列表,是可选参数,callback为请求成功后的回调函数,该函数接受两个参数,***个参数为服务器返回的数据,第二个参数为服务器的状态,是可选参数。$.post()中的type为请求数据的类型,可以是html、xml、JSON等。 “可自动校验表单实例”的jQuery代码如下,html如上所述。

<script language="javascript" src="jquery.min.js"></script>   <script language="javascript">   function createQueryString(){       var username=$("#User").val();       //组合成对象的形式       var queryString={user:username};       return queryString;       }   function startCheck(oInput){       //首先判断是否有输入,没有输入直接返回,并提示       if(!oInput.value){           oInput.focus(); //聚焦到用户名的输入框           document.getElementById("UserResult").innerHTML = "User cannot be empty.";           return;       }       oInput=$.trim(oInput.value); //使用jQuery的$.trim()方法过滤左右空格       $.get("action.asp",createQueryString(),           function(data){               $("#UserResult").html(data);       });   }   </script>

必要说明:

1、对$.trim()、$("#UserResult")、html、val()等jQuery语法不理解的,可以参考jQuery中文手册。本站提供下载。

2、自定义函数createQueryString(),是对传入“处理页”的参数,进行处理。一种常规的方法。

3、因为是以get方式处理,说明这里不需要进行编码和解码。下面以post方式处理,则需要编码和解码了,代码如下

function createQueryString(){       //使用encodeURI()编码解决中文乱码问题       var username=encodeURI($("#User").val());       //组合成对象的形式       var queryString={user:username};       return queryString;       }   function startCheck(oInput){       //首先判断是否有输入,没有输入直接返回,并提示       if(!oInput.value){           oInput.focus(); //聚焦到用户名的输入框           document.getElementById("UserResult").innerHTML = "User cannot be empty.";           return;       }       oInput=$.trim(oInput.value); //使用jQuery的$.trim()方法过滤左右空格       $.post("action.asp",createQueryString(),           function(data){               $("#UserResult").html(decodeURI(data));       });   }   </script>

第三、使用$.ajax()方法

语法说明:尽管load()、$.get()和$.post()非常方便实用,但却不能控制错误和很多交互的细节,可以说这3种方法对Ajax的可控性较差。jQuery提供了一个强大的函数$.ajax(options)来设置Ajax访问服务器的各个细节,它的语法十分简单,就是设置Ajax的各个选项,然后指定相应的值。“可自动校验表单”实例代码如下:

<script language="javascript" src="jquery.min.js"></script>   <script language="javascript">   function createQueryString(){       //使用encodeURI()编码解决中文乱码问题       var username=encodeURI($("#User").val());       //组合成对象的形式       var queryString={user:username};       return queryString;   }   function startCheck(oInput){       //首先判断是否有输入,没有输入直接返回,并提示       if(!oInput.value){       oInput.focus(); //聚焦到用户名的输入框       document.getElementById("UserResult").innerHTML = "User cannot be empty.";       return;       }       oInput=$.trim(oInput.value); //使用jQuery的$.trim()方法过滤左右空格       $.ajax({           type: "GET",           url: "action.asp",           data: createQueryString(),           success: function(data){               $("#UserResult").html(decodeURI(data));           }       });   }   </script>

必要说明:

1、代码基本同上,只是$.ajax(options)稍有不同,对于其参数不理解可以参考jQuery中文手册。

2、给个建议,无论是get方式还是post方式,都习惯进行编码,以防出现中文乱码的问题。

3、再强调一下,无论使用哪种程序,如果遇到问题了,都可以参考相关的手册说明,这是建站所必需的。

上面的实例使用了jQuery的load()方法、$.get()、$.post()、$.ajax()的4种方法,都要考虑中文乱码的问题,下面推荐一个方法,进一步简化jQuery代码,呵呵。

第四、表单插件

表单插件(Form Plugin)是一款功能非常强大的插件,在jQuery官方网站上目前为4***推荐,下载后为jquery.form.js文件。该插件提供获取表单数据、重置表单项目、使用Ajax提交数据等一系列功能,深受开发人员的喜爱。使用表单插件,再次重写“表单校验实例”,完整代码如下:

<form id="myform" action="action.asp">   用户昵称:<input type="text" onblur="startCheck(this)" name="User" id="User"><input type="button" value="检 查" class="button"><span id="UserResult"></span><br />   输入密码:<input type="password" name="passwd1"><br />   确认密码:</td><td><input type="password" name="passwd2"><br /><br />   <input type="submit" value="注册" class="button"><input type="reset" value="重置" class="button">   </form>

HTML框架加了一个“检查”的按钮(使用手动校验的方法),jQuery如下:

<script language="javascript" src="jquery.min.js"></script>   <script language="javascript" src="jquery.form.js"></script>   <script language="javascript">   function startCheck(oInput){       //首先判断是否有输入,没有输入直接返回,并提示       if(!oInput.value){           oInput.focus(); //聚焦到用户名的输入框           document.getElementById("UserResult").innerHTML = "User cannot be empty.";           return;       }   }   $(function(){       $("input[type=button]").click(function(){           var options={               target: "#UserResult"           };           //表单的Ajax化           $("#myform").ajaxSubmit(options);       });   });   </script>

必要说明:
 
1、使用表单插件,必须加载jquery.form.js文件。
 
2、按Ajax方式提交数据,可以使用表单插件的ajaxSubmit(options)来按照Ajax的方式直接提交表单或者使用ajaxform(options)方法,通常在页面加载完成时执行,用来将表单统一Ajax化,并且提交表单依然使用传统的submit按钮,只不过进行的是Ajax提交。其中参数options与$.ajax(options)的参数基本相同。

感谢各位的阅读,以上就是“如何用jQuery重写表单验证”的内容了,经过本文的学习后,相信大家对如何用jQuery重写表单验证这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 如何用jQuery重写表单验证

本文链接: https://www.lsjlt.com/news/73855.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何用jQuery重写表单验证
    这篇文章主要讲解了“如何用jQuery重写表单验证”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用jQuery重写表单验证”吧!前面我们曾介绍过使用jQ...
    99+
    2024-04-02
  • 如何运用jQuery写的验证表单
    这篇文章主要介绍了如何运用jQuery写的验证表单,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。//运用jQuery写的验证表单<!D...
    99+
    2024-04-02
  • jquery表单验证怎么写
    在前端开发中,表单验证是必不可少的一项技能。表单验证可以保证用户输入的数据的正确性和合法性,有效地减少了数据错误的概率,给用户带来良好的体验。本文将介绍如何使用jQuery对表单进行验证。框架与插件在使用jQuery对表单进行验证时,我们可...
    99+
    2023-05-25
  • jQuery如何实现表单验证
    这篇文章主要为大家展示了“jQuery如何实现表单验证”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery如何实现表单验证”这篇文章吧。具体代码如下所示:...
    99+
    2024-04-02
  • jQuery表单验证的代码怎么写
    这篇文章主要介绍“jQuery表单验证的代码怎么写”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“jQuery表单验证的代码怎么写”文章能帮助大家解决问题。 jQu...
    99+
    2024-04-02
  • jQuery实现表单验证
    使用jQuery实现表单验证,供大家参考,具体内容如下 register.html <!DOCTYPE html> <html lang="en"> &l...
    99+
    2024-04-02
  • jquery中validate如何实现表单验证
    这篇文章主要介绍了jquery中validate如何实现表单验证,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、目的为了更好地实现人机交互...
    99+
    2024-04-02
  • jquery如何表单验证不能为数字
    这篇文章主要介绍“jquery如何表单验证不能为数字”,在日常操作中,相信很多人在jquery如何表单验证不能为数字问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jquery...
    99+
    2024-04-02
  • jQuery怎么实现表单验证
    这篇文章将为大家详细讲解有关jQuery怎么实现表单验证,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体代码如下所示:<script type=&quo...
    99+
    2024-04-02
  • jQuery实现表单验证功能
    jQuery表单验证实例 / 包含用户名、密码、住址、邮箱验证 如下图 别忘了引入jQuery框架!!! 话不多说直接先上jQuery部分代码: <script type...
    99+
    2024-04-02
  • jquery表单验证插件validation怎么用
    这篇文章主要为大家展示了“jquery表单验证插件validation怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jquery表单验证插件validat...
    99+
    2024-04-02
  • jQuery表单验证插件怎么使用
    要使用jQuery表单验证插件,你需要按照以下步骤进行操作:1. 引入jQuery库和jQuery表单验证插件的源文件。在HTML文...
    99+
    2023-10-18
    jQuery
  • JQuery中validate如何验证一个单独的表单元素
    这篇文章给大家分享的是有关JQuery中validate如何验证一个单独的表单元素的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前提:已引入JQuery validate插件fu...
    99+
    2024-04-02
  • jQuery如何实现验证表单密码一致性
    这篇文章将为大家详细讲解有关jQuery如何实现验证表单密码一致性,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery 脚本<script type...
    99+
    2024-04-02
  • 如何使用jQuery表单验证插件和日历插件
    这篇文章主要为大家展示了“如何使用jQuery表单验证插件和日历插件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用jQuery表单验证插件和日历插件”这...
    99+
    2024-04-02
  • vue表单验证rules及validator验证器如何使用
    这篇文章主要介绍“vue表单验证rules及validator验证器如何使用”,在日常操作中,相信很多人在vue表单验证rules及validator验证器如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答...
    99+
    2023-07-02
  • 如何用JavaScript实现表单验证
    这篇“如何用JavaScript实现表单验证”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何用JavaScript实现表单...
    99+
    2023-06-30
  • jQuery中Validate如何提交表单验证失败扩展
    这篇文章主要为大家展示了“jQuery中Validate如何提交表单验证失败扩展”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery中Validate如何...
    99+
    2024-04-02
  • ajax中怎么利用 jquery 异步表单验证
    这篇文章将为大家详细讲解有关ajax中怎么利用 jquery 异步表单验证,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 文件...
    99+
    2024-04-02
  • layui如何实现表单验证
    这篇文章主要介绍layui如何实现表单验证,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在网上看到很多validform和layer配合的验证方式,但是觉得写的不好,不清不楚的,于是...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作