无法添加具有指定类的<select>标记

时间:2015-12-04 06:14:16

标签: javascript jquery html twitter-bootstrap dom

我的目标是动态地向HTML表单添加元素。 为此,我尝试了以下实现方法: 在Javascript中可用的appendChild()方法 jQuery中可用的append()方法 当我尝试添加基本HTML标记时,它们会成功添加到表单中。 但是,当标记还有一个与之关联的类时,标记根本不会被渲染。 具体来说,我试图在单击链接时动态地将Bootstrap Select标记添加到表单。添加&lt; select class =&#34; selectpicker&#34;&gt;&lt; / select&gt;不呈现选择标记。 代码:jsFiddle 注意:jsFiddle会渲染&lt;选择&gt;标签,但它仍然不如预期。无论如何,它不会在我的本地计算机上呈现。 我刚开始学习HTML和Javascript,所以如果不是直接的答案,请给我一些提示,如果我犯了一些错误。

2 个答案:

答案 0 :(得分:2)

首先,在您的演示页面上,您忘记包含bootstrap-select js和css文件。

在您的演示中,您没有打电话:

 $('select').selectpicker();

将所有样式应用于select代码。

之后,当动态创建select标记时,必须在函数回调中调用它。

以下是更新版本:https://jsfiddle.net/DTcHh/14905/

答案 1 :(得分:0)

我刚刚转换了你的html代码,把它放到一个字符串变量中它似乎工作正常,它的行为与你的模板相同 jsFiddle

<script>

  var strVar="";
strVar += "Select: <select class='selectpicker'  name='selected_views'>";
strVar += "            <option value=\"X\">X<\/option>";
strVar += "            <option value=\"Y\">Y<\/option>";
strVar += "            <option value=\"Z\">Z<\/option>";
strVar += "  <\/select>";
strVar += "  <a href=\"#\" id=\"link1\" onclick=\"add_selectfield()\">Select<\/a>";

function add_selectfield() {
    $("#ff").append(strVar);
  }
</script>