Javascript操作表单实例讲解(下)


Posted in Javascript onJune 20, 2016

在上篇文章给大家介绍了js操作表单实例讲解(下)的相关知识,本文接着给大家介绍Javascript操作表单实例讲解(下),具体详情如下所示:

一、文本域

<input type="text" />

-----------------------------
操作文本域的值
value 属性 设置或者获取值
-----------------------------

二、单选按钮和多选按钮

<input type="radio" />
<input type="checkbox" />

----------------------------------------------
checked 返回或设置单选的选中状态
true 选中 false 未选中

value 属性 获取选中的值,必须先判断选中状态

----------------------------------------------

example: 全选/全不选/反选

Javascript操作表单实例讲解(下)

1.PNG

1.dom结构

<body>
<form name="myform" action="#" method="post" id="form1">
<script type="text/javascript">
for(var i=0;i<20;i++){
document.write("<input type='checkbox' name='nums' />"+(i+1)+"<br>" )
}
document.write("<input type='radio' name='radios'>全选");
document.write("<input type='radio' name='radios'>全不选");
document.write("<input type='radio' name='radios'>反选");
</script>
</form>
</body>

2.script脚本

2.1 采用调用函数的方式

<script type="text/javascript">
window.onload=function(){
var nums=document.getElementsByName("nums");
var radios=document.getElementsByName("radios");
fun(nums,i,radios);
function fun(a,b,c){
c[b].onclick=function(){
if(b==0){
for(var i=0;i<a.length;i++){
a[i].checked=true;
}
}else if(b==1){
for(var i=0;i<a.length;i++){
a[i].checked=false;
}
}else if(b==2){
for(var i=0;i<a.length;i++){
if(a[i].checked){
a[i].checked=false;
}else{
a[i].checked=true;
}
}
}
}
}
</script>

2.2 采用在比闭包中创建匿名函数的方式

<script type="text/javascript">
window.onload=function(){
var nums=document.getElementsByName("nums");
var radios=document.getElementsByName("radios");
for(var i=0;i<radios.length;i++){
(function(a){
radios[a].onclick=function(){
if(a==0){
for(var i=0;i<nums.length;i++){
nums[i].checked=true;
}
}else if(a==1){
for(var i=0;i<nums.length;i++){
nums[i].checked=false;
}
}else if(a==2){
for(var i=0;i<nums.length;i++){
if(nums[i].checked){
nums[i].checked=false;
}else{
nums[i].checked=true;
}
}
}
} 
})(i);
}
}
</script>

三、下拉框

<form name="myform">
<select name="sels">
<option>北京大学</option>
<option>长安大学</option>
<option>南京大学</option>
</select>
</form>

----------------------------------------

selected 设置或返回下拉框的选中状态

true 选中 false 未选中

selectedIndex 设置或返回下拉框选中的索引号

----------------------------------------

example1:选中长安大学

<script>
var sels=document.myform.sels;
//var sels=document.myform.sels.options;//(也可以)
sels[1].selected=true;
</script>

或者

<script>
var sels=document.myform.sels;
// var sels=document.myform.sels.options;//(也可以)
sels.selectedIndex=1;
</script>

example2:单价*数量=总价

Javascript操作表单实例讲解(下)

1.PNG

1.dom结构

<body>
<form name="myform" action="#" method="post" id="form1">
单价:<input type="text" name="price" value="200">
<select name="count">数量
<option>1个</option>
<option>2个</option>
<option>3个</option>
</select>
总价:<input type="text" name="total" value="200">
</form>
</body>

2.script脚本

<script type="text/javascript">
window.onload=function(){
var price=document.myform.price;
var count=document.myform.count;
var total=document.myform.total;
count.onchange=function(){ 
total.value=parseInt(price.value)*(count.selectedIndex+1); 
}
} 
</script>

四、文本区域

<textarea name="info" rows="7" cols="60"></textarea>

----------------------------

value 返回或设置文本区域的值
----------------------------

example:动态检测文本区域中输入的字符长度

Javascript操作表单实例讲解(下)

1.PNG

1.dom结构:

<body>
<div id="content">一共能输入20个字符,已输入0个,还能输入20个</div>
<form name="myform" action="#" method="post" id="form1">
<textarea name="info" cols="60" rows="7"></textarea>
</form>
</body>

2.script脚本:

<script type="text/javascript">
window.onload=function(){
var content=document.getElementById("content");
var info=document.myform.info;
info.onkeyup=info.onkeydown=function(){
var str=info.value;
var length=check(str);
var strs=20;
if (length<=strs) {
content.innerHTML="一共能输入"+strs+"个字符,已输入"+length+"个,还能输入"+(strs-length)+"个";
}else{
info.value=str.substring(0,strs);
} 
}
//检测中英文
function check(str){
var num=0;
for(var i=0;i<str.length;i++){
if(str.charCodeAt(i)>=0 && str.charCodeAt(i)<=255){//英文
num++;
}else{//中文
num+=2;
}
}
return num;
}
}
</script>

五、表单验证

onsubmit 当表单提交的时候触发的事件

----------------------------------------------------------------------------------------------

<form name="myform" action="www.baidu.com" method="post" onsubmit="return check(this)"></form>
return false; //阻止表单默认行为

----------------------------------------------------------------------------------------------

六、submit方法

该方法用来实现自动提交

而事件onsubmit只能用来手动提交

以上所述是小编给大家介绍的Javascript操作表单实例讲解(下),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript 面向对象 继承
May 13 Javascript
ScrollDown的基本操作示例
Jun 09 Javascript
JQuery在页面中添加和除移DOM示例代码
Jun 24 Javascript
jQuery Ajax异步处理Json数据详解
Nov 05 Javascript
Mac OS X 系统下安装和部署Egret引擎开发环境
Sep 03 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
Sep 10 Javascript
深入理解JavaScript系列(43):设计模式之状态模式详解
Mar 04 Javascript
无刷新上传文件并返回自定义值
Jun 11 Javascript
详解Javascript事件驱动编程
Jan 03 Javascript
jQuery插件ajaxFileUpload使用实例解析
Oct 19 Javascript
Bootstrap媒体对象学习使用
Mar 07 Javascript
浅谈node.js中间件有哪些类型
Apr 29 Javascript
jQuery获取多种input值的简单实现方法
Jun 20 #Javascript
jQuery图片左右滚动代码 有左右按钮实例
Jun 20 #Javascript
JavaScript操作表单实例讲解(上)
Jun 20 #Javascript
jquery 获取select数组与name数组长度的实现代码
Jun 20 #Javascript
JavaScript提升性能的常用技巧总结【经典】
Jun 20 #Javascript
使用jQuery给input标签设置默认值
Jun 20 #Javascript
js中获取时间new Date()的全面介绍
Jun 20 #Javascript
You might like
PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法
2011/08/22 PHP
Smarty局部缓存的几种方法简介
2014/06/17 PHP
Laravel4中的Validator验证扩展用法详解
2016/07/26 PHP
JS网络游戏-(模拟城市webgame)提供的一些例子下载
2007/10/14 Javascript
javascript replace方法与正则表达式
2008/02/19 Javascript
javascript基于jQuery的表格悬停变色/恢复,表格点击变色/恢复,点击行选Checkbox
2008/08/05 Javascript
Javascript的构造函数和constructor属性
2010/01/09 Javascript
jquery设置按钮停顿3秒不可用
2014/03/07 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
JS设置cookie、读取cookie
2016/02/24 Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
2016/05/30 Javascript
聊一聊Vue.js过渡效果
2016/09/07 Javascript
JS简单实现tab切换效果的多窗口显示功能
2016/09/07 Javascript
Javascript实现数组中的元素上下移动
2017/04/28 Javascript
使用JavaScript根据图片获取条形码的方法
2017/07/04 Javascript
vue获取DOM元素并设置属性的两种实现方法
2017/09/30 Javascript
Vue-router的使用和出现空白页,路由对象属性详解
2018/09/03 Javascript
jQuery超简单遮罩层实现方法示例
2018/09/06 jQuery
在JS循环中使用async/await的方法
2018/10/12 Javascript
vue如何实现自定义底部菜单栏
2019/07/01 Javascript
使用vue实现一个电子签名组件的示例代码
2020/01/06 Javascript
[35:43]2018DOTA2亚洲邀请赛 4.1 小组赛B组 paiN vs Effect
2018/04/03 DOTA
遗传算法之Python实现代码
2017/10/10 Python
python特性语法之遍历、公共方法、引用
2018/08/08 Python
Python pandas实现excel工作表合并功能详解
2019/08/29 Python
Python 爬取必应壁纸的实例讲解
2020/02/24 Python
通俗讲解python 装饰器
2020/09/07 Python
微软英国官方网站:Microsoft英国
2016/10/15 全球购物
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
感恩节红领巾广播稿
2014/02/11 职场文书
幼儿园小班个人工作总结
2015/02/12 职场文书
音乐课《小猫钓鱼》教学反思
2016/02/18 职场文书
资深HR教你写好简历中的自我评价
2019/05/07 职场文书
优秀大学生申请书
2019/06/24 职场文书
Python趣味挑战之给幼儿园弟弟生成1000道算术题
2021/05/28 Python