JQuery .load () в переменный или скрытый элемент - PullRequest
0 голосов
/ 23 ноября 2010

Я собираю данные из одной страницы на другую, чтобы создать меню.Мне нужно вытащить данные в скрытый элемент или переменную, так как сейчас я получаю двойное меню.Мой динамический вылет и статические <ul><li>.Меню построено из них.

Вот то, что у меня есть до сих пор:

<script type="text/javascript">
$(document).ready(function(){
    $('div.ms-quickLaunch').replaceWith('<div id="hierarchy" style="border:solid 1px white; width:0px; visibility:hidden"></div>');
    });

$(function(){
            $('#hierarchy').load('http://wwcshare/icenter/Pages/wwcMenuContent.aspx #menuContent',
                function(){
                    $(this).menu({
                        autoShow: true,
                        content: $(this).html(),
                        backLink: false,
                        crumbDefaultText: ' '
                    });
                });         
            });
</script>

Это работает, за исключением того, что мое меню больше не размещается там, где оно принадлежит.Это вверху страницы, а не в стороне #hierarchy div.


Вот моя АЛЬТЕРНАТИВНАЯ ПОПЫТКА, основанная на одном из ответов:

$(function(){    
            $.get('http://wwcshare/icenter/Pages/wwcMenuContent.aspx', function(data){ // grab content from another page
                contentIwant = data.find("#menuContent");
                $('#hierarchy').menu({
                    autoShow: true,
                    content: contentIwant,
                    backLink: false,
                    crumbDefaultText: ' '
                });
            });
        });

Ответы [ 2 ]

5 голосов
/ 23 ноября 2010

a $ .get () подойдет для ваших целей лучше, чем $ .load ()

с помощью $ .get () вы можете обработать данные перед загрузкой на страницу

3 голосов
/ 23 ноября 2010

Неважно, является ли загружаемый элемент скрытым или нет. Если он существует в DOM, вы можете загрузить в него.

Сначала убедитесь, что элемент скрыт с помощью CSS:

#element{display:none;}

или

Скрыть элемент с помощью jQuery при загрузке в него контента:

$('#holder').hide().load('mypage.php');

Надеюсь, это поможет тебе, мужик!

Вт

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...