JS动态添加选项案例分析


Posted in Javascript onOctober 17, 2016

本文实例分析了JS动态添加选项的方法。分享给大家供大家参考,具体如下:

一、问题:

要做一个调查问卷,问题数量不定,问答答案不定。

JS动态添加选项案例分析

JS控答案效果图

二、实现方法:

为了实现这个效果,点击那个按钮就在下面添加4个答案框,选择从A-Z这26个字母,就是为了ASSIC码方便处理

看看HTML结果

<table width="100%" class="form">
  <tr>
  <th width="100px"><label>标题1:</label></th>
  <td align="left"><input type="text" class="large" id="title" name="title" /> <span class="error">请输入标题</span></td>
  </tr>
  <tr>
  <th width="100px"><label>选择类型:</label></th>
  <td align="left">
  <input type="radio" name="radio" />单选   
  <input type="radio" name="boxcheck" />多选   
  <input type="radio" name="select" />下拉   
  </td>
  </tr>
   <tr>
  <th width="100px"><label>答案:</label></th>
    <td align="left">
       <div>
         <div style="float:left;" id="1">
           A:<input type="text" class="mimi" name="A" />
           B:<input type="text" class="mimi" name="B" />
           C:<input type="text" class="mimi" name="C" />
           D:<input type="text" class="mimi" name="D"/>
         </div>
       </div>
         <div class="more" onclick="add_ask($(this))"> </div>
          </td>
    </tr>
</table>

通过这个上面这HTML结果,然后通过JS 实现

function add_ask($this)
{
 var $Word ="";
  //获取前面div层数
 var $div_num = $this.prev().children().attr("id");
  //增加图层
 var $div_next_num = Number($div_num)+1;
 var $last_children_name = $this.prev().children().last().children().last().attr("name").charCodeAt();
 var $html = "<div style=\"float:left;\" id="+$div_next_num+">";
  //进行四次循环
 if($last_children_name+4 <= 90)
 {
  for(var $i=1;$i<=4;$i++)
  {
   $Word = String.fromCharCode($last_children_name + $i);
   $html += $Word+":<input type=\"text\" class=\"mimi\" name="+$Word+" />";
  }
 }else
 {
   $end = 90 - $last_children_name;
   for(var $i=1;$i<=$end;$i++)
  {
   $Word = String.fromCharCode($last_children_name + $i);
   $html += $Word+":<input type=\"text\" class=\"mimi\" name="+$Word+" />";
  }
 }
  $html += "</div>";
 $this.prev().append($html);
}

上面的JS 是通过jquery实现,原理很简答,我就不说太多了。

巧妙的地方就是通过assic码数字转换来实现选项增加。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Lazy Load 延迟加载图片的 jQuery 插件
Feb 06 Javascript
javascript替换已有元素replaceChild()使用介绍
Apr 03 Javascript
jQuery实现多按钮单击变色
Nov 27 Javascript
javascript委托(Delegate)blur和focus用法实例分析
May 26 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
Jun 03 Javascript
Angularjs中如何使用filterFilter函数过滤
Feb 06 Javascript
详谈AngularJs 控制器、数据绑定、作用域
Jul 09 Javascript
浅谈vue-router2路由参数注意的问题
Nov 08 Javascript
webpack源码之loader机制详解
Apr 06 Javascript
详解mpvue中小程序自定义导航组件开发指南
Feb 11 Javascript
layui2.0使用table+laypage实现真分页
Jul 27 Javascript
js加减乘除精确运算方法实例代码
Jan 17 Javascript
Java  Spring 事务回滚详解
Oct 17 #Javascript
使用jquery.qrcode.js生成二维码插件
Oct 17 #Javascript
js浏览器html5表单验证
Oct 17 #Javascript
使用开源工具制作网页验证码的方法
Oct 17 #Javascript
jQuery 实现ajax传入参数含有特殊字符的方法总结
Oct 17 #Javascript
JavaScript中的ajax功能的概念和示例详解
Oct 17 #Javascript
JQuery中解决重复动画的方法
Oct 17 #Javascript
You might like
PHP学习笔记之字符串编码的转换和判断
2014/05/22 PHP
php实现分页显示
2015/11/03 PHP
thinkphp自定义权限管理之名称判断方法
2017/04/01 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
2019/12/18 PHP
原生Js与jquery的多组处理, 仅展开一个区块的折叠效果
2011/01/09 Javascript
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
js 异步操作回调函数如何控制执行顺序
2013/12/24 Javascript
基于 Docker 开发 NodeJS 应用
2014/07/30 NodeJs
nodejs爬虫抓取数据乱码问题总结
2015/07/03 NodeJs
java必学必会之static关键字
2015/12/03 Javascript
jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码
2016/02/25 Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
2016/07/18 Javascript
javascript使用 concat 方法对数组进行合并的方法
2016/09/08 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
2016/12/02 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
微信小程序 简单教程实例详解
2017/01/13 Javascript
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
Webpack打包字体font-awesome的方法示例
2018/04/26 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
element el-input directive数字进行控制
2018/10/11 Javascript
解决node-sass偶尔安装失败的方法小结
2018/12/05 Javascript
在vue项目中使用codemirror插件实现代码编辑器功能
2019/08/27 Javascript
vue prop属性传值与传引用示例
2019/11/13 Javascript
Python中处理unchecked未捕获异常实例
2015/01/17 Python
python使用multiprocessing模块实现带回调函数的异步调用方法
2015/04/18 Python
Python编程使用tkinter模块实现计算器软件完整代码示例
2017/11/29 Python
python动态视频下载器的实现方法
2019/09/16 Python
简单了解django文件下载方式
2020/02/10 Python
tensorflow 大于某个值为1,小于为0的实例
2020/06/30 Python
pycharm配置安装autopep8自动规范代码的实现
2021/03/02 Python
手工制作的音乐盒:Music Box Attic
2019/09/05 全球购物
525心理活动总结
2014/07/04 职场文书
小学生关于梦想的演讲稿
2014/08/22 职场文书
标准离婚协议书(2014版)
2014/10/05 职场文书
Windows中Redis安装配置流程并实现远程访问功能
2021/06/07 Redis