刷新页面删除了bootstrap-select样式

时间:2018-05-07 06:24:08

标签: javascript jquery css twitter-bootstrap select

我正在使用bootstrap-select,而且我是前端的新手。我正在尝试在我的页面中实现bootstrap的多选组件但问题 我面临的是,当我将我的页面提交给服务器并且如果发生错误时,它会从选择框中删除所有css类,只显示一个多选列表而不是原始组件。 我正在使用的组件是This,以下是我正在尝试使用此组件的jsp代码。

<spring:bind path="userClients">
   <div id="customerSelect" class="${status.error ? 'has-error' : ''}" style="margin-top:20px; margin-bottom:15px height:30px">
       <form:select  class="selectpicker form-control"  path="userClients" multiple="multiple" name="userClients">
            <c:forEach var="clientInfo" items="${clients}">
               <form:option value="${clientInfo.env}">${clientInfo.env}</form:option>
            </c:forEach>
        </form:select>
        <div class="${status.error ? 'has-error' : ''}">
        <form:errors  path="userClients" ></form:errors>
        </div>
   </div>
   </spring:bind>

以下是我的pageOnLoad代码块:

 $(document).ready(function() {
     $('select').selectpicker();
 });

任何帮助将不胜感激。感谢

1 个答案:

答案 0 :(得分:2)

我认为在刷新时,css类将从组件中删除,从而使其成为一个简单的多选列表。尝试添加ID以选择组件,例如ID =&#34;选择选取器&#34;然后使用此id的引用强制渲染,如下所示:

$(document).ready(function() {
    $('#select-picker').selectpicker('render');
} 

或者如果您要提交表单,请确保在提交函数中调用此呈现函数,以确保正确地重新呈现组件。