我可以使用 html() 保存动态表单而不是遍历 INPUT 吗?
Can I save dynamic form with html() rather than iterating through INPUTs?
我有一个动态创建的HTML页面,它添加了输入。
我希望能够使用 html() 函数捕获页面(和所有表单输入值)。
不过,这似乎不起作用。 以以下页面为例:
<html>
<head>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
$( document ).ready(function() {
$( "#_create" ).click(function() {
var myHtml = '<input class="my-input" val="">';
$('#_input').html(myHtml);
});
$( "#_save" ).click(function() {
alert($('#_masterDiv').html());
});
$( "#_saveIterate" ).click(function() {
$("input").each(function(){
alert(this.value);
});
});
});
</script>
</head>
<body>
<button id="_create">Create Dynamic Input</button><br>
<button id="_save">Save by grabbing html</button><br>
<button id="_saveIterate">Save by iterating</button><br>
<div id="_masterDiv">
<div id="_input">Input button here</div><br>
</div>
</body>
</html>
单击"通过抓取 html 保存"会获取表单,但不获取值。单击"通过迭代保存"获取输入的值。
我是否需要调用"应用更改"之类的函数才能在 INPUT 中获取最新值?
某些浏览器(如 Firefox/Chrome)不会保存 HTML 输入值的当前状态。因此,您必须手动分配输入值:
$( document ).ready(function() {
$( "#_create" ).click(function() {
var myHtml = '<input class="my-input" value="">';
$('#_input').html(myHtml);
});
$( "#_save" ).click(function() {
//if you have many input fields, loop through them all
$("input").each(function(){
//set the value manually
this.setAttribute('value', this.value);
});
alert($('#_masterDiv').html());
});
$( "#_saveIterate" ).click(function() {
$("input").each(function(){
alert(this.value);
});
});
});
这是jsfiddle链接:http://jsfiddle.net/urspz/1/
相关文章:
- 循环遍历以数组为值的Javascript对象
- 遍历类元素数组,并在jquery中选择同级元素
- Jquery遍历表元素
- Chrome扩展:遍历不同的页面并收集数据
- 如何遍历包含对象的数组-javascript
- 遍历 JSON 对象并检查 URL 是否以某个值结尾
- 遍历AngularJs中的对象
- JQuery 遍历当前 SELECT 值
- 循环遍历包含另一个表单的表单
- 使用Yadda和Protractor重用步骤定义,遍历所需文件
- 遍历D3中所有数据点之间的所有值
- 自动遍历所有链接的事件
- JS.循环遍历多维数组,以计数元素在每列中的出现次数
- 如何使用 document.querySelectorAll 遍历选定的元素
- 使用Javascript反向遍历XML
- 当知道同一hiearch中至少有一个元素时,遍历到元素.结构使用jquery
- Netsuite Suitelet:在不达到治理限制的情况下,遍历事务行项目的列表加载和提交记录
- 遍历DOM查找字符串有时会正确返回
- 如何使用SnapSVG将SVG作为树结构遍历
- 我可以使用 html() 保存动态表单而不是遍历 INPUT 吗?