使用 Javascript 动态添加的文本框中的文本消失
Disappearing text in dynamically added textboxes with Javascript
您可以使用以下代码添加任意数量的文本框,如下所示
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
var i=2;
function AddTextbox(){
container.innerHTML=container.innerHTML+'<input type="text" name="'+ i + '" id="'+ i + '">' + '</br>';
i++;
}
</script>
</head>
<body>
<form action="next.php" method="post" >
<input type="text" name="1" id="1" />
<input type="button" onClick="AddTextbox();" value="add" />
<input type="submit" value="submit" />
<div id="container"></div>
</form>
</body>
</html>
我得到的唯一问题是,如果用户添加了 2 个文本框并在这些文本框中写入了一些内容,并且用户再次单击"添加文本框"按钮,则用户插入文本框的数据将消失。
innerHTML 不会保留用户输入。 您应该将输入创建为新元素并使用 appendChild 将元素附加到容器中,而不是使用 innerHTML。
这将使其他输入元素保持不变,而不是用对 innerHTML 的调用替换它们。
不要设置 container.innerHTML,因为你之前已经引用了 jQuery,所以这样做:
$(container).append('<input type="text" ...etc...
您可以使用 jQuery.append 代替使用 innerHTML。
在这里检查小提琴
使用 jQuery 更轻松地解决问题
$('#container').append('<input type="text" ');
按如下方式更改按钮名称:
<input type="submit2" onClick="AddTextbox();" value="add" />
而不是
<input type="button" onClick="AddTextbox();" value="add" />
相关文章:
- 文本正在立即消失,而不是随着时间的推移而消失
- 如何让文本在几秒钟后消失
- 单击按钮时,文本框消失
- 当我在tinmyce.int()中编写设置函数时,tinymce消失了,只有纯文本区域可见
- 基于视口宽度逐渐消失的文本..带有省略号.
- 单击“提交按钮”后,文本会迅速消失
- 不稳定的内部 HTML 行为.文本消失
- 如何在HTML5视频完成加载后使文本消失
- 在输入框中单击时 - 在附近显示文本 - 在单击时输出文本消失
- HTML - 如何使文本消失,并通过按下按钮显示不同的文本
- 使用 Javascript 动态添加的文本框中的文本消失
- 为什么我的网页上这个UL的链接和文本消失了
- 当使用 jquery 出现另一个文本时,使文本消失
- 可以使文本消失,但可以't使隐藏的文本可见
- 使未选中的单选按钮和关联的文本消失
- onsubmit使使用innerHTML打印的文本消失
- jQuery动画分区中的文本消失
- 单击按钮时,文本消失(JQUERY)
- 谷歌地图,拖动路线后距离文本消失
- 切换页面后文本消失