,可以通过以下步骤实现:
document.getElementById()
或其他选择器方法获取到父容器的DOM元素。document.createElement()
方法创建一个新的DOM元素。根据需要添加的元素类型(如输入框、下拉列表等),创建相应的元素。setAttribute()
方法设置属性,例如设置输入框的类型、名称、样式等。appendChild()
方法将新创建的表单元素添加到父容器中。下面是一个示例代码,演示如何在MDL中动态添加一个输入框:
<!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的样式。
这是一个简单的示例,你可以根据需要扩展和修改代码来满足具体的需求。
领取专属 10元无门槛券
手把手带您无忧上云