Выбор текста в Word Web Add-in с помощью JQuery - PullRequest
0 голосов
/ 06 июля 2018

Я разрабатываю веб-надстройку Word с использованием OfficeJS, Теперь у меня есть аккордеон. Если пользователь нажимает на аккордеонное меню, мне нужно сделать выбор поверх текста заголовка в документе Word, где бы он ни находился (хотя бы одно вхождение).

Есть ли способ поиска по текстам и выбора из этого в Word doc с помощью OfficeJS.Context?

Office.context.document.setSelectedDataAsync(WordToSelect, function (asyncResult) {    });

Я получил вышеуказанный код, который вставляет указанный текст, и вместо поиска выбираю и делаю

1 Ответ

0 голосов
/ 06 июля 2018

Для этого вам нужно использовать API поиска в заголовке. Вот краткий пример того, как это сделать. (предполагается, что "Hello World" напечатано в заголовке :))

async function run() {
    await Word.run(async (context) => {

        let searchResults = context.document.sections.getFirst().getHeader("primary").search("World");
        searchResults.load();

        await context.sync();

        //select the first one found
        searchResults.items[0].select();
    });
}
При работе с заголовками необходимо учитывать несколько моментов:
  1. Как вы, наверное, знаете, документы Word могут иметь несколько разделов и, следовательно, несколько наборов верхних и нижних колонтитулов. Поэтому, если вы хотите охватить все случаи, обязательно просмотрите коллекцию разделов.
  2. Каждый раздел может содержать 3 верхних и нижних колонтитула, первичную, четную, первую страницу. было бы интересно посмотреть, где вы будете делать поиск / выбор в ситуации, когда у вас есть все варианты.

надеюсь, что это направит вас в правильном направлении.

...