我想创建一个带有表单字段/组件重复功能的简单表单。
我在网上搜索过。但我找不到任何适当的教程。
例如,我的表单字段包含以下内容。
1. Title
2. Email
3a. Image Name
3b. Image Description
3c. Image file
3a,3b,3c是这里的一组。所以我们称之为“图像组”。 我希望在该组下方有一个重复的链接,我的用户可以点击该链接并复制任意数量的链接。
我要问的是{p> Here is an example。 Ps:我不想使用jformer。因为它加载了所有脚本并且花费了很多时间来加载页面。这就是为什么我问这个问题。由于
答案 0 :(得分:1)
由于您将问题标记为与jquery相关,因此您应该在此处查看克隆方法:http://api.jquery.com/clone/
你需要对可以复制的字段进行分组(假设将它们括在一个范围内),这样你就可以拥有所有这些字段的选择器,克隆然后使用append或prepend等方法来“注入”相同的元素再次
如果要在服务器端处理这些值,则应使用数组作为名称(输入类型=“text”name =“image_name []”)
答案 1 :(得分:1)
您需要做的就是编写一个JavaScript函数,将一组新的表单元素附加到给定的容器中。像这样:
<div id="imageforms">
<fieldset id="firstimage">
<input type="text" name="imagenames[]" />
<textarea name="imagedescriptions[]"></textarea>
<input type="file" name="imagefiles[]" />
</fieldset>
</div>
<a href="#" onclick="addAdditionalImage(); return false;">add another image</a>
然后你需要JavaScript函数:
function addAdditionalImage() {
$('#imageforms').append($('#firstimage').clone());
}
这里最有趣的部分是name="xxx[]"
的用法,它告诉PHP从表单值创建一个数组。