【问题标题】:Adding row on click in bootstrap form在引导表单中单击时添加行
【发布时间】:2015-12-03 04:35:18
【问题描述】:

我的代码工作正常,但标签位置不正确。单击时第一个标签位置不正确,但其他标签位置正确。

我哪里做错了?

<input type="button" id="more_fields" onclick="add_fields();" value="Add More" />
<form>
    <div class="form-group">
        <label class="col-lg-3 control-label">Field:1</label>
        <div class="col-lg-5">
            <input type="text" class="form-control" name="field1" />
        </div>
    </div>
    <script type="text/javascript">
    var info = 1;
    function add_fields() {
        info++;
        var objTo = document.getElementsByClassName('form-group')[0]
        var divtest = document.createElement("div");
        divtest.innerHTML = '<div class="form-group"><label class="col-lg-3     
        control-label">Field'+info+'</label><div class="col-lg-5"> <input   
        type="text" class="form-control" name="field1" /></div></div>';
        objTo.appendChild(divtest)
    }
    </script>
    <div class="form-group">
        <div class="col-lg-9 col-lg-offset-3">
            <button type="submit" class="btn btn-primary">Submit</button>
        </div>
    </div>
</form>

【问题讨论】:

标签: javascript forms twitter-bootstrap twitter-bootstrap-3


【解决方案1】:

该行被附加到错误的位置。试试:

<div id="additionalFields"></div>

您希望新字段的位置,然后更改

var objTo = document.getElementsByClassName('form-group')[0]

var objTo = document.getElementById('additionalFields');

这应该会更正对齐方式。

【讨论】:

    【解决方案2】:

    问题在于您的引导栏。

    <form>
    
      <div class="form-group ">
       <label class="col-lg-3 control-label">Field:1</label>
        <div class="col-lg-9">
         <input type="text" class="form-control" name="field1" />
       </div>
      </div>
     <div class="form-group">
       <div class="col-lg-9 col-lg-offset-3">
       <button type="submit" class="btn btn-primary">Submit</button>
      </div>
      </div>  
    

        <script type="text/javascript">
             var info = 1;
        function add_fields() {
        info++;
        var objTo = document.getElementsByClassName('form-group')[0]
        console.log(objTo);
    
           var divtest = document.createElement("div");
         divtest.innerHTML = '<div class="form-group"><label class="col-lg-3 control-label">Field'+info+'</label><div class="col-lg-9"> <input type="text"         class="form-control" name="field1" /></div></div>';
    
         objTo.appendChild(divtest)
         }
    

    您可以将其作为参考。希望对您有所帮助。

    【讨论】:

    • 总列应为 12。您有 8 列(col-lg-3 和 col-lg-5)。所以下一个 col-lg-3 被附加到同一行
    • 谢谢。工作正常。但是行之间没有间隙。
    • 可以用form-group类添加行类
    • 好吧,我可以添加表单验证吗?当我在点击时添加一行时如何更改表单的名称值..
    • 它会起作用吗?
    猜你喜欢
    • 2021-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-30
    • 1970-01-01
    • 2014-05-27
    • 2020-12-16
    • 1970-01-01
    相关资源
    最近更新 更多