首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在MDL中动态添加表单元素

,可以通过以下步骤实现:

  1. 首先,MDL(Material Design Lite)是一种基于Google Material Design的前端框架,它提供了一套美观且易于使用的UI组件和样式。因此,在动态添加表单元素之前,需要确保已经引入了MDL框架。
  2. 动态添加表单元素可以通过JavaScript来实现。首先,需要获取要添加元素的父容器,可以使用document.getElementById()或其他选择器方法获取到父容器的DOM元素。
  3. 创建要添加的表单元素,可以使用document.createElement()方法创建一个新的DOM元素。根据需要添加的元素类型(如输入框、下拉列表等),创建相应的元素。
  4. 设置表单元素的属性和样式,可以使用元素的setAttribute()方法设置属性,例如设置输入框的类型、名称、样式等。
  5. 将创建的表单元素添加到父容器中,可以使用父容器的appendChild()方法将新创建的表单元素添加到父容器中。

下面是一个示例代码,演示如何在MDL中动态添加一个输入框:

代码语言:txt
复制
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.indigo-pink.min.css">
  <script src="https://code.getmdl.io/1.3.0/material.min.js"></script>
</head>
<body>
  <div id="formContainer" class="mdl-textfield mdl-js-textfield">
    <input class="mdl-textfield__input" type="text" id="inputField">
    <label class="mdl-textfield__label" for="inputField">Input</label>
  </div>

  <button onclick="addInput()">Add Input</button>

  <script>
    function addInput() {
      var formContainer = document.getElementById("formContainer");

      var input = document.createElement("input");
      input.setAttribute("class", "mdl-textfield__input");
      input.setAttribute("type", "text");
      input.setAttribute("id", "dynamicInput");

      var label = document.createElement("label");
      label.setAttribute("class", "mdl-textfield__label");
      label.setAttribute("for", "dynamicInput");
      label.innerText = "Dynamic Input";

      formContainer.appendChild(input);
      formContainer.appendChild(label);

      componentHandler.upgradeElement(formContainer); // 更新MDL样式
    }
  </script>
</body>
</html>

在上述示例中,首先引入了MDL的样式和脚本。然后,创建了一个包含一个输入框的父容器formContainer。点击"Add Input"按钮时,调用addInput()函数,在函数中动态创建了一个输入框和对应的标签,并将它们添加到父容器中。最后,使用componentHandler.upgradeElement()方法更新MDL样式,以确保新添加的元素也应用了MDL的样式。

这是一个简单的示例,你可以根据需要扩展和修改代码来满足具体的需求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java PDF 添加表单

PDF表单域是指用户PDF文件可以自主进行填写、选择等操作的区域,其主要目的是采集用户输入或选择的数据。常见的表单域包括文本框、单选按钮、复选框、列表框和组合框等。...文本将介绍如何使用 Free Spire.PDF for JavaJava程序创建PDF表单域。...Jar包导入 方法一:下载Free Spire.PDF for Java包并解压缩,然后将lib文件夹下的Spire.Pdf.jar包作为依赖项导入到Java应用程序 方法二:直接通过Maven仓库安装...; //文本框前的文字 page.getCanvas().drawString(text, font, brush1, new Point2D.Float(0, baseY)); //PDF...绘制文字 Rectangle2D.Float tbxBounds = new Rectangle2D.Float(baseX, baseY , 150, 15); //创建Rectangle2D

3.8K30

链表----链表添加元素详解

2.2 如在链表头添加一个666元素则需要先将666放进一个节点里,节点里存入这个元素以及相应的next。 ?...2.3 链表头添加元素的相关代码 //链表头添加新的元素e public void addFirst(E e) { Node node = new Node(e);...(E e) { head = new Node(e, head); size++; } 2.4 链表中间添加元素 假设初始链表为: ?...通过第一步、第二步即可将新元素插入到索引为2的地方。  从上不难看出,对于链表添加元素关键是找到要添加的节点的前一个节点,因此对于索引为0的节点添加元素就需要单独处理。...关于链表中间添加元素的代码: //链表的index(0--based)的位置添加新的元素e (实际不常用,练习用) public void add(int index, E e)

2.7K30

C#实现向数组动态添加元素

这篇文章主要介绍了C#实现向数组动态添加元素方式,具有很好的参考价值,希望对大家有所帮助。...如有错误或未考虑完全的地方,望不吝赐教 C#向数组动态添加元素 背景 现需要向数组循环插入字符串,但C#的数组是不支持动态添加元素的,只能创建固定大小的数组,该如何解决呢?...参考了网上资料,个人觉得比较好的解决方法:使用泛型list,先将元素存入list,最后使用ToArray()转成数组。...List strList = new List(); for(int i = 0; i < 3; i++) { strList.Add("str"+i);//循环添加元素...} string[] strArray = strList.ToArray();//strArray=[str0,str1,str2] C#运用List动态添加元素 C#的数组是不支持动态添加元素

15910

原生JS动态添加、删除元素&内容

刀是我拿的,人是我杀的  一个容器,用来放添加元素。一个button按钮,用来动态的操作DOM。...} 添加元素元素添加内容: 文本内容 innerText container.innerText = '追加的内容'; HTML内容 innerHTML container.innerHTML... = '追加内容为H3标签'; 原有内容的基础上添加: 以HTML为例: container.innerHTML = container.innerHTML + '追加内容为...H3标签'; 也可以用 += 的写法: container.innerHTML += '追加内容为H3标签'; 创建元素及内容,添加到页面: 创建元素 createElement...("h3");//创建一个html标签 ele.appendChild(text);//标签内添加文字 container.appendChild(ele);//将标签添加到页面 删除元素: 移除元素

27K40

如何实现动态添加元素添加点击事件

页面开发过程中常常遇到需要动态添加元素,然后给这一元素绑定相关事件的情况,这种情况下一般需要给元素加上相关属性,然后写这些元素的事件函数即可。动态添加元素怎么绑定事件呢?...原生JavaScript 原生JavaScript主要有2种实现方式,第一种是动态添加的html代码添加oclick事件,然后传递一个唯一的参数来判断点击的是哪个,然后做相应的操作。...该事件附加到staticAncestors应处理的元素的静态父级 ( )。 每次在此元素或后代元素之一上触发事件时,都会触发此 jQuery 处理程序。...---- 在此之前,推荐的方法是使用live(): $(selector).live( eventName, function(){} ); 然而,live() 1.7 中被弃用on(),而在 1.9...function(){} ); 可以替换为以下on()方法: $(document).on( eventName, selector, function(){} ); ---- 例如,如果您的页面使用类名动态创建元素

3.8K20

动态增加表单元素并获取元素的text和value提交

专家可以点击 + 添加条件,多个条件之间是并且的关系。 问题的关键在于动态添加表单和如何获取表单的text和value分别根据要求进行拼接。...首先是添加表单,这个很简单: $("#addform").click(function () { //添加的内容 var addform...$("#addformbody").remove(); }); form.render(); }); 然后是提交的时候获取表单的所有的...思路就是每个追加的条件都是三个表单元素构成的,他们都在一个div,根据这些div的相同的class获取到这些数据然后遍历每个div,在其中用各种选择器获取他们的text和value,进行拼接,发送给后台...layui.form; var $ = layui.$ ; table.render({ elem: '#tabledata', //指定原始表格元素选择器

3.5K110

Vue实战案例(form表单动态添加组件)

今天我们来给大家介绍下在Vue开发我们经常会碰到的一种需求场景,就是form我们需要动态的增加组件模块,效果如下: ?   ...案例效果的实现 1.创建组件   首先我们创建一个单独的组件,同时 template 定义我们的表单元素,此处使用的是 element UI 来实现效果。 ?...3.实现添加功能   要实现动态添加组件的功能,我们需要通过点击添加的按钮来增加数组 edus 元素,如下 ?...子组件回调 ? 5.提交数据   当我们要提交表单数据的时候,怎么将动态添加的组件的数据一并提交给后台服务呢,步骤如下: ? ?...提交数据的时候将 edus 数组的数据和表单数据一块转换为 JSON 数据提交到后台。 ? 6.清空组件   最后操作完成需要将动态添加的组件处理掉怎么实现呢?

7.1K51

vue + element 动态渲染、移除表单添加验证

博客地址:https://ainyi.com/66 又接到新需求了吧~~ 背景 一个大表单里,有可能会出现这种需求,用户可以自己操作动态添加、移除表单,更加个性化的效果。...常见于填写个人信息、附加内容的表单 例如: “工作经历”可以用户自己点击继续添加按钮,原有的表单后面 append 多一个表单,不需要就点击右上方 X 按钮移除 问题 实现之前,提出几个问题 vue...怎么动态渲染或移除表单上去 v-model 怎么绑定动态添加表单的 value 值 动态新增的表单如何验证 动态表单怎么填写对应的 prop ......好吧,我当时也思考了一会,最后选择数组方式,动态渲染 代码实现讲解 利用数组,v-for 循环方式,可以完美实现动态渲染和移除,因为操作的只有对象数组而已 请格外注意动态添加表单的 rule 和 prop...每个动态添加表单都要加上 rule prop 需要根据对象数组下标绑定设置对应的 value(:prop="'azList' + index + '.azName'") <div class="section-form

6K30

WooCommerce 结算页面自定义(删除添加表单元素

这篇文章意在记录一个问题,默认的WooCommerce 的结算(checkout)页面上自定义(删除/添加表单元素。...WooCommerce 定义这些表单元素(fields)的函数是woocommerce_checkout_fields,那么我们要自定义,就从这个函数下手,hook 之。...需求一:删除结算页面上多余的表单元素(fields) 这个多余的表单元素指删除后,只剩下最需要的三个:姓、名、邮箱。这个需求如果单单是做虚拟商品的话就非常有需要。...需求二:设置表单元素的一些显示样式 上面的小标题实在是太难表达Jeff 的意思了,下面直接上例子+代码。...需求三:添加自定义的表单元素 比如说我想定义一个text的输入框,就可以用下面的代码: add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields

3.5K80
领券