По своему опыту я обнаружил, что решение Сураджа наиболее подходит для проблемы, с которой я столкнулся.
Я вводил ввод в DOM, чтобы сидеть рядом с существующими элементами, используя следующее: -
var filterOptions = ['001','002','005','009'];
// Inject radio inputs Using siteOptions
$.each(siteOptions, function (ind, val) {
$('<input type="checkbox" class="checkClass siteBox" name="sitename" value="'+val+'" id="site-'+val+'" checked><label for="site-'+val+'">Site '+val+'</label><br>').insertBefore('#allSiteSelector');
});
При этом я заметил, что расстояние между элементами между входом и метками отличаетсяк тем для существующих элементов DOM.
С введенными элементами не было промежутка между меткой и вводом.
Исправлено было поместить
между входом и меткой.
var filterOptions = ['001','002','005','009'];
// Inject radio inputs Using siteOptions
$.each(siteOptions, function (ind, val) {
$('<input type="checkbox" class="checkClass siteBox" name="sitename" value="'+val+'" id="site-'+val+'" checked><label for="site-'+val+'">Site '+val+'</label><br>').insertBefore('#allSiteSelector');
});
// Set siteid radio inputs Using siteOptions
var siteOptions = ['001']
// Inject WITHOUT NBSP
$.each(siteOptions, function (ind, val) {
var input = '<input type="checkbox" class="checkClass siteBox" name="sitename" value="' + val + '" id="site-' + val + '" checked>';
var label = '<label for="site-' + val + '">No Non-Breaking Space ' + val + '</label><br>';
$(input+label).insertBefore('#sitenameAll');
});
// Inject WITH NBSP
$.each(siteOptions, function (ind, val) {
var input = '<input type="checkbox" class="checkClass siteBox" name="sitename" value="' + val + '" id="site-' + val + '" checked>';
var nbsp = ' ';
var label = '<label for="site-' + val + '">With Non-Breaking Space ' + val + '</label><br>';
$(input+nbsp+label).insertBefore('#sitenameAll');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul class="cd-filter-content cd-filters list" id="filters">
<h4>Site Filter</h4>
<input type="checkbox" class="checkClass siteBox" name="sitename" value="001" id="001" checked>
<label for="001">001 Site 1</label><br>
<input type="checkbox" class="checkClass siteBox" name="sitename" value="002" id="002" checked>
<label for="002">002 Site 2</label><br>
<input type="checkbox" class="checkClass siteBox" name="sitename" value="003" id="003" checked>
<label for="003">003 Site 3</label><br>
<input type="checkbox" class="checkClass siteBox" name="sitename" value="004" id="004" checked>
<label for="004">003 Site 4</label><br>
<input type="checkbox" class="checkClass" name="sitename" value="All" id="sitenameAll" checked>
<label for="sitenameAll">All</label>
<br>
</ul>