Изменение IntialPrompt Поиск Поиск Веб-Часть JavaScript / jQuery

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/108993

  •  29-09-2020
  •  | 
  •  

Вопрос

У меня есть страница_Layout, в которой я планирую использовать многие страницы, эта макет страницы имеет веб-панель поиска по поиску, на данный момент он имеет универсальный «поиск ...».Однако то, что я хочу, это изменить его, так что он говорит «Поиск на любой странице, на которой вы находитесь».У меня нет проблем с получением названия страницы, которую я нахожусь, но изменяющую инициальнопромат к тому, что я хочу.Я пробовал оживительные вещи, такие как document.getElementById('NBSwebpartSiteSearch').InitialPrompt = 'test';

Это было полезно?

Решение

Интересно - поведение 2013 года использует функцию в случае размытия поля поиска, чтобы заполнить или скрывать термин «поиск ...» в зависимости от ситуации - я предполагаю, что поддерживать старые версии IE, а не используя свойство заполнителя....

Так!Что вам нужно:

//use this instead of immediate or jQuery ready because we want to manipulate SP generated markup
_spBodyOnLoadFunctionNames.push("searchPromptSetup");

function searchPromptSetup() {
    function spPromptHider(searchDOMElement) {
        //make sure you have a valid object 
        if (searchDOMElement) {
            //give it a placeholder if it doesn't already have one
            if (!searchDOMElement.placeholder) searchDOMElement.placeholder = "Search in whatever page you are on";
            /*use SP's javascript to hide the 'Search...' prompt, note the $ here is not the jQuery alias...
                the OR assignment is my lazy way of allowing the function to be used in the blur event later... */
            var control = $getClientControl(searchDOMElement) || $getClientControl(this);
            control.hidePrompt();
        }
    }

    var searchBox = document.getElementById('<yoursearchboxid>');
    // if you don't add this listener to the blur event it will just reset to 'Search...'
    searchBox.addEventListener("blur", spPromptHider);
    spPromptHider(searchBox);
}
.

Вышесказанное будет работать только с браузерами, которые поддерживают атрибут заполнителя ... Но вы можете расширить его, чтобы добавить поддержку для тех, которые нет.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top