动态创建引导按钮

U.f*_*f.O 3 javascript twitter-bootstrap

是否可以动态创建引导按钮?我有一个文本文件,其中包含一些项目列表,我将使用javascript创建一个数组.这就是我想动态创建引导按钮的地方,这些项目是每个按钮中的文本.如果文本文件中有10个项目,则会创建10个按钮.有人可以告诉我它是如何做到的或指向我的一些教程.

编辑(现在可以创建,但不能检查是否创建按钮的代码):

createButtons():

$(function() {
  $.ajax({
    url : 'http://localhost:8080/SSAD/type.txt',
    dataType : "text",
    success : function (filecontent) {
      var lines=filecontent.split('\n');
      $.each(lines, function() {
        if (this!='') {
            var word = this;
            word = word.toLowerCase().replace(/(?:_| |\b)(\w)/g, function(str, p1) { return p1.toUpperCase();});
            if ($('button:contains("'+word+'")').length==0) {
                var button='<button type="button" class="btn btn-block btn-inverse active" data-toggle="button tooltip" title="Click this to enable/disable viewing of'+this+'" onclick="toggleVisibility('+"'"+this+"'"+')">'+word+'</button>';
                $(".crisisButtons").append(button);
            }
        }
      });
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

HTML:

<button type="button" class="btn btn-block btn-inverse" onclick="createButtons">Click me!</button>

<div class="crisisButtons"></div>
Run Code Online (Sandbox Code Playgroud)

dav*_*rad 7

是.这很容易.

TextFile.txt的

button1
button2
button3
button4
button5
button6
button7
button8
button9
button10
Run Code Online (Sandbox Code Playgroud)

<div id="textfile-buttons"></div>

<script type="text/javascript">
$(document).ready(function() {
  $.ajax({
    url : 'textfile.txt',
    dataType : "text",
    success : function (filecontent) {
      var lines=filecontent.split('\n');
      $.each(lines, function() {
        if (this!='') {
          var button='<button class="btn btn-primary">'+this+'</button>&nbsp;';
          $("#textfile-buttons").append(button);
        }
      });
    }
  });
});
</script>
Run Code Online (Sandbox Code Playgroud)

结果 在此输入图像描述

当然,您需要为click按钮分配一个处理程序,如果使用<a>-tags而不是,则需要链接<button>.


更新

如果要检查是否button已存在某个文本,请修改$.each循环

$.each(lines, function() {
  if (this!='') {
    //check if a button with "this" text not already exists
    if ($('button:contains("'+this+'")').length==0) {
      var button='<button class="btn btn-primary">'+this+'</button>&nbsp;';
      $("#textfile-buttons").append(button);
    }
  }
});
Run Code Online (Sandbox Code Playgroud)

所以,即使textfile.txt包含button1 button2 button3 button3 button3 button3 button7 button8 button9 button10

只会创建一个button3.