Tab order should naturally roughly follow the order of the HTML elements in the DOM.
Here's an example of it working just fine with version 1.6.3
<!-- begin snippet: js hide: false -->
<!-- language: lang-html -->
<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.2/css/bootstrap.css" rel="stylesheet"/>
<link href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.6.3/css/bootstrap-select.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.2/js/bootstrap.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.6.3/js/bootstrap-select.js"></script>
<div class="form-group">
<label for="name">Name</label>
<input type="text" class="form-control" id="name">
</div>
<div class="form-group">
<label for="name">Something</label>
<select class="selectpicker form-control">
<option>Mustard</option>
<option>Ketchup</option>
<option>Relish</option>
</select>
</div>
<div class="form-group">
<label for="something">Something</label>
<input type="text" class="form-control" id="something">
</div>
<!-- end snippet -->
If you remove the bootstrap-select, and just let the regular <select>
element be part of the form, does it still have issues? If so, bootstrap select isn't the root of the problem.
Either way, we'll probably need a working demo to diagnose the problem. You can take the Stack Snippet in this answer and start adding to it until you can recreate the problem.