<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>JQuery动态添加控件并取值-jq22.com</title>
<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
<style>
</style>
</head>
<body>
<input type="button" onclick="add()" value="增加">
<input type="button" onclick="query()" value="查看">
<ul>
<li><span>A:</span>
<input type="checkbox">
<input type="text">
<input type="button" class="del" value="删除">
</li>
<li><span>B:</span>
<input type="checkbox">
<input type="text">
<input type="button" class="del" value="删除">
</li>
<li><span>C:</span>
<input type="checkbox">
<input type="text">
<input type="button" class="del" value="删除">
</li>
<li><span>D:</span>
<input type="checkbox">
<input type="text">
<input type="button" class="del" value="删除">
</li>
</ul><script>
$(document).ready(function() {
init();
});
//初始4个选项
var num = 4;
//添加选项
function add() {
// alert(num)
//添加一行,num加一
num++;
//通过知道当前有的按钮数算出选项名
var str = String.fromCharCode(64 + num);
//编辑新选项的html代码
var $li = $("<li>" + "<span>" + str + ":</span> " + " <input type=\"checkbox\"/>" + " <input type=\"text\" class=\"str\"/>" + " <input type=\"button\" class=\"del\" value=\"删除\"/></li>");
//将新的一行添加到<ul>中
var $parent = $("ul");
$parent.append($li);
//因为添加了新的选项需要重新绑定按钮
init();
}
function query() {
// alert(num)
var str = "";
var str1 = "";
//for循环查询已有控件的输入值
for (var i = 0; i < num; i++) {
var a = $("ul li:eq(" + i + ") :text").val();
var b = $("ul li:eq(" + i + ") :checkbox").is(':checked');
var j = i + 1;
str += "第" + j + "个文本框输入:" + a;
str1 += "第" + j + "个复选框选中:" + b;
}
alert(str);
alert(str1);
}
//绑定每个ul li下的删除按钮
function init() {
//这里其实用ul li input :button就可以,但是给按钮加一个class方便用css给按钮添加样式,这里本人比较懒没有添加样式。
$("ul li input.del").unbind("click").click(function() {
//$(this).parent().remove();链式操作,$(this)为该按钮本事,parent()为其父元素即<li>,调用renmove()将整个<li>节点删除
$(this).parent().remove();
//alert(num)
//for循环刷新列表,因为考试往往用ABC,所以利用ascii码通过获取当前控件的索引来转换成对应的英文字母,
for (var i = 0; i < num - 1; i++) {
//ascii码65对应的A,65加上当前索引值再转成字符即可
var str = String.fromCharCode(65 + i) + ":";
//定位到每个<li>下的<span>节点,将选项号刷新到页面
$("ul li:eq(" + i + ") span").html(str);
}
//删除一行,num减一
num--;
});
}</script>
</body>
</html>

JQuery动态添加控件并取值的更多相关文章

  1. Jquery 动态追加控件并获取值

    先展示通过动态添加控件的结果: 实现步骤: 1.引用js文件 <script src="Script/jquery-1.5.1.min.js" type="text ...

  2. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  3. winform导入导出excel,后台动态添加控件

    思路: 导入: 1,初始化一个OpenFileDialog类 (OpenFileDialog fileDialog = new OpenFileDialog();) 2, 获取用户选择文件的后缀名(s ...

  4. VC中动态添加控件

    VC中动态添加控件 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个 ...

  5. asp.net动态添加控件学习

    看了老师的教程后,自己一点感悟记录下来: 1.在页面提交后,动态生成的控件会丢失, 但如果生成控件的代码在pageload中,就可以,原理是每次生成页面都执行生成. 2.动态按件或页面原来控件, 在页 ...

  6. WPF-学习笔记 动态修改控件Margin的值

    原文:WPF-学习笔记 动态修改控件Margin的值 举例说明:动态添加一个TextBox到Grid中,并设置它的Margin: TextBox text = new TextBox(); t_gri ...

  7. WPF 动态添加控件以及样式字典的引用(Style introduction)

    原文:WPF 动态添加控件以及样式字典的引用(Style introduction) 我们想要达到的结果是,绑定多个Checkbox然后我们还可以获取它是否被选中,其实很简单,我们只要找到那几个关键的 ...

  8. Android 在布局容器中动态添加控件

    这里,通过一个小demo,就可以掌握在布局容器中动态添加控件,以动态添加Button控件为例,添加其他控件同样道理. 1.addView 添加控件到布局容器 2.removeView 在布局容器中删掉 ...

  9. WPF:理解ContentControl——动态添加控件和查找控件

    WPF:理解ContentControl--动态添加控件和查找控件 我认为WPF的核心改变之一就是控件模型发生了重要的变化,大的方面说,现在窗口中的控件(大部分)都没有独立的Hwnd了.而且控件可以通 ...

随机推荐

  1. SpringMVC----执行流程+底层解析

    SpringMVC流程图如上面所示,根据上图,串联一下底层源码: 1.在DispatcherServlet中找到doDisPatch 2.观察方法体,然后找到getHandler方法 3.点进方法,发 ...

  2. python写购物车小程序

    #!/usr/bin/env python3 # -*- coding:utf-8 -*- # @Author: Skyell Wang # @Time : 2018/5/22 15:50 # 基础要 ...

  3. MYSQL结构修改

    mysql改表结构主要是5大操作 ADD 添加字段 MODIFY 修改字段类型 CHANGE 修改字段名(也可以修改字段名) DROP 删除字段 RENAME 修改表名 ADD添加新字段:(新字段默认 ...

  4. JVM性能调优详解

    前面我们学习了整个JVM系列,最终目标的不仅仅是了解JVM的基础知识,也是为了进行JVM性能调优做准备.这篇文章带领大家学习JVM性能调优的知识. 性能调优 性能调优包含多个层次,比如:架构调优.代码 ...

  5. Unity 简记(1)--TileMap

    ## Tilemap是unity中自带的快速构建2D场景的工具,优点是省时省力, 1 使用方法 在场景创建一个Tilemap 打开TilePalette ​ 3.创建一个新的Palette,将地图切割 ...

  6. Java虚拟机-字节码指令

    目录 字节码指令 字节码与数据类型 加载和存储指令 运算指令 类型转换指令 对象创建与访问指令 操作数栈管理指令 控制转移指令 方法调用和返回指令 异常处理指令 同步指令 字节码指令 Java虚拟机的 ...

  7. a 标签添加 onclick 事件

    a 标签添加 onclick 事件 <a href="javascript:void(0);" οnclick="js_method()">点击&l ...

  8. hdu 1754 I Hate It (线段树、单点更新)(PS:ios::sync_with_stdio(false)可以加快cin、cout的读取写出速度)

    I Hate ItTime Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  9. hdu 1251 统计难题 (字典树(Trie)<PS:C++提交不得爆内存>)

    统计难题Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131070/65535 K (Java/Others)Total Submis ...

  10. ThreadLocal线程局部变量的使用

    ThreadLocal: 线程局部变量 一).ThreadLocal的引入 用途:是解决多线程间并发访问的方案,不是解决数据共享的方案. 特点:每个线程提供变量的独立副本,所有的线程使用同一个Thre ...