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 相关文章推荐
图片按比例缩放函数
Jun 26 Javascript
JavaScript 对象模型 执行模型
Oct 15 Javascript
SharePoint 客户端对象模型 (一) ECMA Script
May 22 Javascript
利用JS自动打开页面上链接的实现代码
Sep 25 Javascript
JS与C#编码解码
Dec 03 Javascript
Jquery attr()方法 属性赋值和属性获取详解
Apr 15 Javascript
jQuery使用getJSON方法获取json数据完整示例
Sep 13 Javascript
jQuery联动日历的实例解析
Dec 02 Javascript
vue-music关于Player播放器组件详解
Nov 28 Javascript
解决js相同的正则多次调用test()返回的值却不同的问题
Oct 10 Javascript
简单的React SSR服务器渲染实现
Dec 11 Javascript
微信小程序自定义组件传值 页面和组件相互传数据操作示例
May 05 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下的权限算法的实现
2007/04/28 PHP
php编写一个简单的路由类
2011/04/13 PHP
PHP面向对象概念
2011/11/06 PHP
ThinkPHP应用模式扩展详解
2014/07/16 PHP
有关于JS构造函数的重载和工厂方法
2013/04/07 Javascript
js操作table示例(个人心得)
2013/11/29 Javascript
jquery实现的网页自动播放声音
2014/04/30 Javascript
jQuery验证插件 Validate详解
2014/11/20 Javascript
js编写贪吃蛇的小游戏
2020/08/24 Javascript
javascript实现网站加入收藏功能
2015/12/16 Javascript
2016年最热门的15 款代码语法高亮工具,美化你的代码
2016/01/06 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
2016/05/20 Javascript
jQuery文字提示与图片提示效果实现方法
2016/07/04 Javascript
基于JavaScript实现购物网站商品放大镜效果
2016/09/06 Javascript
Vue2.0+ElementUI实现表格翻页的实例
2017/10/23 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
基于vue打包后字体和图片资源失效问题的解决方法
2018/03/06 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
VueCli4项目配置反向代理proxy的方法步骤
2020/05/17 Javascript
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
详解Python中的from..import绝对导入语句
2016/06/21 Python
Python随机生成数据后插入到PostgreSQL
2016/07/28 Python
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
python版本坑:md5例子(python2与python3中md5区别)
2017/06/20 Python
Matplotlib scatter绘制散点图的方法实现
2020/01/02 Python
通过cmd进入python的步骤
2020/06/16 Python
python和opencv构建运动检测器的实现
2021/03/03 Python
45个非常奇妙的CSS3 特性应用示例
2012/01/01 HTML / CSS
美国最大的在线水培用品商店:GrowersHouse.com
2018/08/14 全球购物
英国领先的新鲜松露和最好的松露产品供应商:TruffleHunter
2019/08/26 全球购物
高三自我鉴定范文
2013/10/19 职场文书
美术国培研修感言
2014/02/12 职场文书
揭牌仪式策划方案
2014/05/28 职场文书
美德少年事迹材料1000字
2014/08/21 职场文书
庆七一活动总结
2014/08/27 职场文书
教师节倡议书2015
2015/04/27 职场文书