javascript - 通过 javascript 添加 HTML 控件

标签 javascript html controls

有些东西在躲避我……这似乎很明显,但我不太明白。

我想在用户更改下拉列表的值时向页面(普通旧 html)添加/删除几个 HTML 控件。一个示例是为请求的每个(多个)房间添加或删除“此房间中的客人数量”文本框......

所以如果用户选择:

1个房间,有一个文本框

2个房间,有两个文本框

3个房间,三个文本框

回到2个房间,两个文本框

等等...

最佳答案

如果直接使用 DOM 和 Javascript,您可能想要修改包含文本框的 DOM 对象的 InnterHtml 属性...很可能是一个 div。所以它看起来像:

var container = document.getElementById("myContainerDiv");
var html;
for(var i = 0; i < selectedRooms; i++)
{
    html = html + "<input type=text ... /><br />";
}
container.innerHtml = html;

使用像 jQuery 这样的 Javascript 库可以使事情稍微简单一些:

var html;
for(var i = 0; i < selectedRooms; i++)
{
    html = html + "<input type=text ... /><br />";
}

$("#myContainerDiv").append(html);

关于javascript - 通过 javascript 添加 HTML 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/275514/

相关文章:

javascript - Shadow DOM 中的内容可编辑?

javascript - 滚动事件在 chrome 上不起作用,在 firefox 上不精确

wpf - 有没有好的WPF枢轴控件?

c++ - 当我移动轨迹栏时,如何防止控件(选项卡)在 Windows 通用控件 6.0 中闪烁和消失?

html - 如何在 Bootstrap 3 中添加 10 个相等的列

vba - 内容控制无法识别内容

javascript - `bind` 如何与 `Meteor.bindEnvironment` 一起使用?

javascript - 如何清除 mapbox 地理编码器?

javascript - 如何在 Vue.js 中取消绑定(bind)数组副本

javascript - 使用 vanilla js 和 css 的动画移动动画