如何动态添加“;隐藏的“;要形成的字段
How to dynamically add "hidden" field to form?
我使用OptimizePress(wordpress主题)。它有很好的选择加入表单,但不幸的是,没有办法通过用户界面添加隐藏的表单字段。我可以选择为每个页面添加自定义脚本。
如何将预定义的隐藏字段动态添加到表单中?表单没有ID。以下内容可能有效,但在没有表单ID的情况下如何执行?
var input = document.createElement("input");
input.setAttribute("type", "hidden");
input.setAttribute("name", "name_you_want");
input.setAttribute("value", "value_you_want");
//append to form element that you want .
document.getElementById("formname").appendChild(input);
这是页面上唯一的表单。
使用下面的一些示例,它不适用于type=hidden:https://jsfiddle.net/eLazhj3d/1.
但适用于type=text:https://jsfiddle.net/eLazhj3d/2.
这里有一个正在工作的fiddle(显示一个可见的文本字段):
使用:
document.querySelector("form").appendChild(input);
https://jsfiddle.net/s55snxtn/
代码:html:
<form action=""><input type="text"/>
</form>
javascript:
var input = document.createElement("input");
input.setAttribute("type", "text");
input.setAttribute("name", "name_you_want");
input.setAttribute("value", "value_you_want");
//append to form element that you want .
document.querySelector("form").appendChild(input);
使用document.querySelector()
函数,您可以使用css选择器库瞄准任何元素,因此在您的情况下:
document.querySelector("form").appendChild(input);
将获得任何属于form
标记的元素。
查询选择器文档
如果页面中只有一个表单标记,则可以使用
document.getElementsByTagName("form")[0];
它将返回一个数组,只需获取第一个索引中的元素
使用Jquery
$('<input>').attr({
type: 'hidden',
id: 'foo',
name: 'bar',
value: 'value'
}).appendTo('form');
尝试以下操作:
document.forms[0].appendChild(input);
您可以使用返回数组的getElementsByTagName。
如果这是页面上的第一个表单,它将类似于
document.getElementsByTagName('form')[0].appendChild(input);
相关文章:
- 如何在谷歌表单中添加动态字段
- 自动填充动态字段上的 ajax 响应
- Jquery mobile中的Jquery动态字段
- 向Uploadify添加动态字段
- JavaScript RegEx - 加载十六进制或空字符串的动态字段
- 通过电子邮件提交带有动态字段的表单
- 引导日期时间选取器不适用于动态字段
- 车把动态字段名称
- 具有 ng-repeat(ng-repeat)中动态字段名称的自定义指令
- 我有一个问题,使用 Javascript 或 Jquery 创建具有字符串计数的动态字段
- 多选更改创建动态字段
- 添加动态字段以创建特定的 JSON 格式
- Ajax 自动填充不适用于动态字段,但不适用于静态字段
- JQuery 动态字段(拼音页)
- Extjs 4 : 单击按钮时将动态字段添加到表单中
- 动态字段上的 AJAX 自动完成
- 如何根据 laravel 中的用户输入创建动态字段
- 单击即可添加2个动态字段
- 如何使用计数器添加动态字段以限制jQuery中的字段数
- 可以't在使用node js将动态字段值插入mysql DB时,在发送头之后设置头