Когда я использую селектора jQuery для добавления динамически генерируемого html в скрытый div, они не работают. Как добавить что-то в скрытый div с jquery? Мне нужно сделать div скрытым при добавлении контента после ajax-запроса, потому что я должен генерировать много html-блоков и добавлять их на страницу, я хочу добавить все блоки в скрытый div, а затем показать весь контент (сделать div visible).jQuery add html content in hidden div
ответ
Вы можете использовать шкурку JQuery() и шоу() функция для этого, что немного чище, чем используется .css() ZeJur. Посмотрите на мою Plunker example
Пример:
<div class="hiddenContent">I am hidden div</div>
<button class="addDynamicContent">Add dynamic content to div - hide while doing</button>
Сценарий:
<script>
$('.addDynamicContent').click(function() {
$.ajax({
url: "http://api.icndb.com/jokes/random",
beforeSend: function() {
$('.hiddenContent').hide();
console.log('I hide before request');
},
success: function(response) {
$('.hiddenContent').html(response.value.joke);
$('.hiddenContent').show();
console.log('I show after I got the content');
}
});
});
</script>
Заканчивать Plunker
Чтобы скрыть элемент использовать jQuery
.css()
метод
$('#panel').css('visibility', 'hidden');
и показать его обратно:
$('#panel').css('visibility', 'visible');
Если Вам необходимо скрыть свой элемент перед загрузкой новых элементов Вы можете использование beforeSend
функция:
beforeSend: function(){
$('#panel').css('visibility', 'hidden');
}
и после загрузки всех Ваших данных и разобраны Используй success
функцию, чтобы показать его снова:
success: function(data){
$('#panel').append('<div>' + parsedData + '</div>').css('visibility', 'visible');
}
и все вместе:
$.ajax({
method: "POST",
url: "sample.php",
dataType: "json",
beforeSend: function(){
$('#panel').css('visibility', 'hidden');
},
success: function(data){
$('#panel').append('<div>' + parsedData + '</div>').css('visibility', 'visible');
},
});
Я пробовал $ ('selector'). Hide() и $ ('selector'). Show(), и он работает для меня, но когда я добавляю элементы, я скрыл div , их высота и ширина возвращаются 0 – user3872496
Основное различие между '.hide()' и '.css ('visibility')' состоит в том, что '.hide()' похоже на css 'display: none', а когда используется не должно быть места, выделенного для него между другими тегами, но когда используется '.css ('visibility')', тег не отображается, но для него выделяется пространство на странице. – ZeJur
- 1. Echo hidden div content
- 2. Show/Hidden Content
- 3. JQuery Добавить Hidden HTML элементы
- 4. jQuery getJSON content in new div
- 5. jquery lazy load content in div
- 6. Флажок jQuery show hidden div
- 7. JQuery onChange div content
- 8. jquery in infront of html content
- 9. Curl Redirect Hidden Content
- 10. add crossdomain in html
- 11. Fade in hidden div с переходом CSS
- 12. Часть 2: JQuery Добавить Hidden HTML элементы
- 13. PowerPoint Content add-in - Упорядочить не работает
- 14. VSTO Word Add-In: Content Control Nesting
- 15. jQuery get html content INSIDE div
- 16. jquery autocomplete render hidden div
- 17. DIV fit width content in parent
- 18. php post content in popup div
- 19. Нужна помощь с jQuery Hidden Div
- 20. Jquery default div content
- 21. Facebook share button in hidden div
- 22. angular-google-map in hidden div
- 23. email div content in php
- 24. parse html content in node.js
- 25. select li from hidden ul in jquery
- 26. Событие JQuery onclick to show/hidden div
- 27. tinymce add div и class in blockquote
- 28. jquery add html content to div from struts action class variable
- 29. Lazy load hidden content with Boostrap
- 30. AngularJS Print Hidden Div
Показать код, который вы пытаетесь использовать, что не работает –
также обеспечивают гораздо более конкретное описание проблемы, так как оно относится к коду – charlietfl
@PatrickEvans существует много кода, проблема в том, что - селектор не работа в скрытом div, когда это видно - все добавлено, но когда я делаю $ ('# panel'). style.visibility = 'hidden' ;, селекторы не работают для добавления в него содержимого html. – user3872496