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 相关文章推荐
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
Jul 11 Javascript
prettify 代码高亮着色器google出品
Dec 28 Javascript
DOM_window对象属性之--clipboardData对象操作代码
Feb 03 Javascript
浅谈JavaScript函数参数的可修改性问题
Dec 05 Javascript
JS OffsetParent属性深入解析
Jan 13 Javascript
JS实现的仿东京商城菜单、仿Win右键菜单及仿淘宝TAB特效合集
Sep 28 Javascript
JS字符串的切分用法实例
Feb 22 Javascript
浅析javaScript中的浅拷贝和深拷贝
Feb 15 Javascript
Vue中v-for的数据分组实例
Mar 07 Javascript
微信小程序云开发(数据库)详解
May 17 Javascript
简述pm2常用命令集合及配置文件说明
May 30 Javascript
Vue 基于 vuedraggable 实现选中、拖拽、排序效果
May 18 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中的事务使用实例
2015/05/26 PHP
Zend Framework开发入门经典教程
2016/03/23 PHP
Laravel使用scout集成elasticsearch做全文搜索的实现方法
2018/11/30 PHP
微信小程序发送订阅消息的方法(php 为例)
2019/10/30 PHP
基于JQuery的一个简单的鼠标跟随提示效果
2010/09/23 Javascript
基于JavaScript 类的使用详解
2013/05/07 Javascript
js获取dom的高度和宽度(可见区域及部分等等)
2013/06/13 Javascript
jQuery和AngularJS的区别浅析
2015/01/29 Javascript
分享两个手机访问pc网站自动跳转手机端网站代码
2020/12/24 Javascript
jQuery使用ajax跨域获取数据的简单实例
2016/05/18 Javascript
深入浅析JavaScript函数前面的加号和叹号
2016/07/09 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
2017/01/17 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
bootstrap 通过加减按钮实现输入框组功能
2017/11/15 Javascript
vue translate peoject实现在线翻译功能【新手必看】
2018/06/07 Javascript
vue-rx的初步使用教程
2018/09/21 Javascript
vue项目环境变量配置的实现方法
2018/10/12 Javascript
Vue组件内部实现一个双向数据绑定的实例代码
2019/04/04 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
Vue项目中使用jquery的简单方法
2019/05/16 jQuery
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
浅谈Vuex注入Vue生命周期的过程
2019/05/20 Javascript
vue 集成jTopo 处理方法
2019/08/07 Javascript
微信小程序如何实现radio单选框单击打勾和取消
2020/01/21 Javascript
微信小程序实现电子签名功能
2020/07/29 Javascript
JS+css3实现幻灯片轮播图
2020/08/14 Javascript
Python简单删除目录下文件以及文件夹的方法
2015/05/27 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
Python3 修改默认环境的方法
2019/02/16 Python
强悍的Python读取大文件的解决方案
2019/02/16 Python
11个Python3字典内置方法大全与示例汇总
2019/05/13 Python
python函数的万能参数传参详解
2019/07/26 Python
详解如何在pyqt中通过OpenCV实现对窗口的透视变换
2020/09/20 Python
2014年行政后勤工作总结
2014/12/06 职场文书
2015年节能降耗工作总结
2015/05/22 职场文书
2015年庆祝国庆节66周年演讲稿
2015/07/30 职场文书