редактирование трека крошки sharepoint на лету - PullRequest
1 голос
/ 20 декабря 2010

Я искал несколько часов и нашел какой-то код, который утверждает, что может делать то, что я хочу, однако ... это не так.

В настоящее время я пытаюсь удалить страницы и .aspx с конца имени моей страницы в журнале «хлебные крошки» в sharepoint. В настоящее время это выглядит как .... mysite> myarea> pages> mypage.aspx

Я попытался изменить SiteMapProvider, и это убирает ссылку на страницы, а также текущую страницу. Тогда это выглядело как mysite> myarea.

Я бы хотел иметь mysite> myarea> mypage Я попытался использовать этот фрагмент кода ... Я не утверждаю, что владею или разработал этот код.

var breadCrumbs = document.getElementById('ctl00_PlaceHolderTitleBreadcrumb_ContentMap')
if (breadCrumbs != null) {
    if (breadCrumbs.childNodes.length >= 3) {
        if (breadCrumbs.childNodes[2].innerHTML.indexOf('Pages') > 0) {
            breadCrumbs.childNodes[1].innerHTML = "";
            breadCrumbs.childNodes[2].innerHTML = "";
        }
    }
}

Я поместил несколько document.writes, чтобы увидеть, куда попал код, и переменная breadCrums кажется нулевой, поэтому код никогда не попадает в сочную часть: P

Любые идеи, подсказки, подсказки будут с благодарностью приняты

Truez

1 Ответ

0 голосов
/ 20 декабря 2010

Я запустил ваш код на сайте SharePoint и смог получить элемент breadCrumbs просто отлично. Вы проверили, что это правильный идентификатор вашего объекта панировочных сухарей. Идентификатор, который вы используете, по умолчанию, но вы должны проверить. Просто просмотрите источник на странице и быстро наберите Ctrl - F и выполните поиск " Breadcrumb ".

Чтобы увидеть, является ли это просто вопросом размещения, сделайте следующее: На целевой странице SharePoint с помощью IE откройте инструмент веб-разработчика ( Инструменты > Инструменты разработчика ). Перейдите на вкладку Сценарий и нажмите кнопку Многострочный режим в нижней части панели сценариев. Вставьте этот код:

var breadCrumbs = document.getElementById('ctl00_PlaceHolderTitleBreadcrumb_ContentMap')
if (breadCrumbs != null) {
    if (breadCrumbs.childNodes.length >= 3) {
        if (breadCrumbs.childNodes[2].innerHTML.indexOf('Pages') > 0) {
            breadCrumbs.childNodes[1].innerHTML = "";
            breadCrumbs.childNodes[2].innerHTML = "";
        } else {
            alert('Pages node NOT found!');
        }
    } else {
        alert('breadCrumbs only has ' + breadCrumbs.childNodes.length + ' children!');
    }
} else {
    alert('breadCrumbs NOT found!');
}

Затем нажмите кнопку Run Script . Этот код принадлежит только вам, с некоторыми добавленными предупреждениями, которые помогут вам увидеть, если / где он не работает. Если вы не получаете оповещений и элемент хлебных крошек изменяется, как вы ожидаете, тогда да, это размещение. В противном случае это зависит от того, какое предупреждение вы получите. Дайте мне знать результаты, и я могу помочь вам исправить проблему.

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