есть вот такой код:
(function($){
$(document).ready(function(){
$('#application-general').on('change', '#select_type', function(){
var data = {
task:'application.getApplicationSettings',
application_type:$('#select_type').val(),
app_id:$('#application_id').val()
};
$.ajax({
url: ajax_url,
data: data,
type: "POST",
dataType : "json",
success: function( json ){
if (json.error == false){
$('#application-settings').html(json.application_settings);
};
},
error: function( xhr, status, errorThrown ){
// smth on error
},
complete: function( xhr, status ){
// smth on complete
}
});
});
});
})(jQuery);
суть работы: в контейнере '#application-general' есть '#select_type' (выпадающий список) и контейнер '#application-settings'. При изменении '#select_type' в контейнер '#application-settings' загружаются новые настройки в зависимости от значения. Все работает прекрасно, но на подгруженных через ajax контролах не срабатывает bootstrap. Что делать? как инициировать работу bootstrap на подгружаемом контенте?
собственно, вот код элемента после обычной загрузки страницы:
<div class="control-group">
<div class="control-label">
<label id="jform_settings_seo-lbl" for="jform_settings_seo" class="hasTooltip" title="" data-original-title="<strong>Метатеги элементов</strong>">Метатеги элементов</label>
</div>
<div class="controls">
<fieldset id="jform_settings_seo" class="radio btn-group btn-group-yesno">
<input type="radio" id="jform_settings_seo0" name="jform_settings[seo]" value="0" checked="checked">
<label for="jform_settings_seo0" class="btn active btn-danger">Нет</label>
<input type="radio" id="jform_settings_seo1" name="jform_settings[seo]" value="1">
<label for="jform_settings_seo1" class="btn">Да</label>
</fieldset>
</div>
</div>
и код элемента после подгрузки через AJAX
<div class="control-group">
<div class="control-label">
<label id="jform_settings_seo-lbl" for="jform_settings_seo" class="hasTooltip" title="<strong>Метатеги элементов</strong>">
Метатеги элементов</label>
</div>
<div class="controls">
<fieldset id="jform_settings_seo" class="radio btn-group btn-group-yesno">
<input type="radio" id="jform_settings_seo0" name="jform_settings[seo]" value="0">
<label for="jform_settings_seo0">Нет</label>
<input type="radio" id="jform_settings_seo1" name="jform_settings[seo]" value="1" checked="checked">
<label for="jform_settings_seo1">Да</label>
</fieldset>
</div>
</div>
разница конечно же, есть, элементы label при обычной загрузке страницы имеют дополнительные классы. Неужели при загрузке через ajax эти классы нужно прописать руками?