10 个实用的 jQuery 表单操作代码片段
jQuery 绝对是一个伟大的开源JavaScript类库,是帮助我们快速和高效开发前端应用的利器。可能大家在日常的开发过程中常常会处理表单相关的 JavaScript,在今天这篇代码片段分享文章中,我们收集了10个超棒超实用的jQuery表单处理代码,希望能够在大家的开发过程中帮助大家更好更快的处理表单相关问题,希望大家喜欢!
1. 在表单中禁用“回车键”
大家可能在表单的操作中需要防止用户意外的提交表单,那么下面这段代码肯定非常有帮助:
- $("#form").keypress(function(e) {
- if (e.which == 13) {
- return false;
- }
- });
2. 清除所有的表单数据
可能针对不同的表单形式,你需要调用不同类型的清楚方法,不过使用下面这个现成方法,绝对能让你省不少功夫。
- function clearForm(form) {
- // iterate over all of the inputs for the form
- // element that was passed in
- $(':input', form).each(function() {
- var type = this.type;
- var tag = this.tagName.toLowerCase(); // normalize case
- // it's ok to reset the value attr of text inputs,
- // password inputs, and textareas
- if (type == 'text' || type == 'password' || tag == 'textarea')
- this.value = "";
- // checkboxes and radios need to have their checked state cleared
- // but should *not* have their 'value' changed
- else if (type == 'checkbox' || type == 'radio')
- this.checked = false;
- // select elements need to have their 'selectedIndex' property set to -1
- // (this works for both single and multiple select elements)
- else if (tag == 'select')
- this.selectedIndex = -1;
- });
- };
3. 将表单中的按钮禁用
下面的代码对于ajax操作非常有用,你可以有效的避免用户多次提交数据,个人也经常使用:
- //禁用按钮:
- $("#somebutton").attr("disabled", true);
- //启动按钮:
- $("#submit-button").removeAttr("disabled");
可能大家往往会使用.attr(‘disabled',false);,不过这是不正确的调用。
4. 输入内容后启用递交按钮
这个代码和上面类似,都属于帮助用户控制表单递交按钮。使用这段代码后,递交按钮只有在用户输入指定内容后才可以启动。
- $('#username').keyup(function() {
- $('#submit').attr('disabled', !$('#username').val());
- });
5. 禁止多次递交表单
多次递交表单对于web应用来说是个比较头疼的问题,下面的代码能够很好的帮助你解决这个问题:
- $(document).ready(function() {
- $('form').submit(function() {
- if(typeof jQuery.data(this, "disabledOnSubmit") == 'undefined') {
- jQuery.data(this, "disabledOnSubmit", { submited: true });
- $('input[type=submit], input[type=button]', this).each(function() {
- $(this).attr("disabled", "disabled");
- });
- return true;
- }
- else
- {
- return false;
- }
- });
- });
6. 高亮显示目前聚焦的输入框标示
有时候你需要提示用户目前操作的输入框,你可以使用下面代码高亮显示标示:
- $("form :input").focus(function() {
- $("label[for='" + this.id + "']").addClass("labelfocus");
- }).blur(function() {
- $("label").removeClass("labelfocus");
- });
7. 动态方式添加表单元素
这个方法可以帮助你动态的添加表单中的元素,比如,input等:
- //change event on password1 field to prompt new input
- $('#password1').change(function() {
- //dynamically create new input and insert after password1
- $("#password1").append("<input type='text' name='password2' id='password2' />");
- });
8. 自动将数据导入selectbox中
下面代码能够使用ajax数据自动生成选择框的内容
- $(function(){
- $("select#ctlJob").change(function(){
- $.getJSON("/select.php",{id: $(this).val(), ajax: 'true'}, function(j){
- var options = '';
- for (var i = 0; i < j.length; i++) {
- options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
- }
- $("select#ctlPerson").html(options);
- })
- })
- })
9. 判断一个复选框是否被选中
代码很简单,如下:
- $('#checkBox').attr('checked');
10. 使用代码来递交表单
代码很简单,如下:
- $("#myform").submit();
希望这些jQuery代码会对你的开发有帮助,如果你也有类似的代码,请和我们分享!
10 个实用的 jQuery 表单操作代码片段的更多相关文章
- 不可错过的10个超棒jQuery表单操作代码片段
jQuery 绝对是一个伟大的开源javascript类库,是帮助我们快速和高效开发前端应用的利器.可能大家在日常的开发过程中常常会处理表单相关的 javascript,在今天这篇代码片段分享文章中, ...
- 10个超棒jQuery表单操作代码片段
jQuery绝对是一个伟大的开源javascript类库,是帮助我们快速和高效开发前端应用的利器.可能大家在日常的开发过程中常常会处理表单相关的javascript,在今天这篇代码片段分享文章中,这里 ...
- 绝对震撼 10个实用的jQuery/HTML5插件
在HTML5的世界里,我们见证了无数的特效奇迹,但很多特效我们很难在网页中应用,今天我们要分享10款效果震撼但是又比较实用的jQuery/HTML5插件,希望这些项目在应用的过程中也能给你带来设计灵感 ...
- js控制表单操作的常用代码小结
收集了一些在WEB前台开发中常用的一些控制表单操作函数. 1.鼠标经过时自动选择文本鼠标划过自动选中:<input type="text" value="默认值&q ...
- JS 08表单操作_表单域
一.表单的获取方式 document.getElementById() document.forms[index]; document.forms[form_name] document.form_n ...
- Jquery操作radio,checkbox,select表单操作实现代码
一 .Select jQuery获取Select选择的Text和Value: 1. $("#select_id").change(function(){//code...}); / ...
- selenium多表单操作与多窗口,以及警告框处理
知识是需要经常温习的,不然是很容易遗忘的. 以前自己操作IFRAME,多窗口的时候,觉得很简单.半年没有操作自动化了,知识又还了回去. 写博客有一个好处,可以把自己记住的知识点记录下来,这样,以后自己 ...
- 【收藏】8段JQuery处理表单的代码片段,很实用
1 只接受数字输入 $("#uAge").keydown(function(event) { // 允许退格和删除键 if ( event.keyCode == 46 || eve ...
- HTML表单操作的记录
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- 解决 winform 界面对不齐 z
一个winform的程序,本机上界面对得很齐,到一到客户的机器上就惨不忍睹,一番研究后搞定: 1. AutoScaleMode = None 2. BackgroundImageLayout = No ...
- 【Linux】一个简单的线程创建和同步的例子
最近很多精力在Linux上,今天简单看了一下Linux上的线程和同步,其实不管windows还是Linux,OS层面的很多原理和概念都是相同的,很多windows之上的经验和概念完全可以移植到Linu ...
- no symbol version for module_layout
内核模块编译helloworld: no symbol version for module_layout, 尝试各种解决办法, 都没搞定, 版本也是对的. dmesg提示no symbol vers ...
- 55个高质量的Magento主题,助你构建电子商务站点
Magento是一个功能丰富的开源电子商务平台(译者注:基于PHP的Zend Framework开发),在网店的外观.商品管理以及其它功能上,它给商家提供了前所未有的灵活和易用性.通过挑选一个合适的M ...
- FlatBuffers要点
FlatBuffers发布出来一周多,周末便抽时间先研究下它的使用方法.Flatbuffers的idl的语法主要参考[http://google.github.io/flatbuffers/md__s ...
- PHP强大的内置filter (二) 完
<?php #Sanitize filters #Sanitize filters 可以清理掉不规范的字符 # FILTER_SANITIZE_EMAIL 可以清理除了 字母和数字 以及 !#$ ...
- HDU2648:Shopping(DKBR_hash)
题目链接 题意: 给出n个字符串,接下来m天,每天每个字符串要增加对应的值,询问“memory”每天的排名 分析: 用hash表hash出每个字符串对应得值,然后放入二维数组(防止地址冲突),m天,输 ...
- Systemd Unit文件中PrivateTmp字段详解-Jason.Zhi
如下图,在开发调试的时候会遇到这么一个问题. file_put_contents时,$tmp_file显示的目标文件是/tmp/xxx.而这个文件实际放在linux的目录却是/tmp/systemd- ...
- 使用Sunny-grok实现内网转发
Sunny-grok 申请地址:http://www.ngrok.cc ngrok.cfg配置: server_addr: "server.ngrok.cc:4443" auth_ ...
- Make the “Check out” function available in the office document opened with Document ID link
I found a solution to make the “Check out” function available in the office document opened with Doc ...