Category Archives: jQuery і SharePoint

Швидкий Підказка: Додавання jQuery для сторінок публікації МОСС

При підвищенні МОХ publising сторінки за допомогою jQuery, Я вдарив наступні лежачий:

Помилка сервера в ' /’ Застосування.


Помилка аналізатора

Опис: Сталася помилка під час розбору ресурсів, необхідних для обробки цього запита. Перегляньте конкретні розбору опис помилки з таким і відповідним чином змінити вихідний файл.

Аналізатор повідомлення про помилку: Тільки елементи керування вмістом дозволено безпосередньо в вмісту сторінки, яка містить елементи керування вмістом.

Джерело помилки:

 
Line 10: 
Line 11: 
Line 12: <script 
Line 13:     type="text/javascript" 
Line 14:     src="/jQuery/jquery-1.4.min.js"> 

Вихідний файл: /_catalogs/masterpage/KCC_FacultyMember.aspx    Лінія: 12


Інформацію про версію: Microsoft .NET Framework версії:2.0.50727.4927; Версію ASP.NET:2.0.50727.4927

Це було легко виправити (h/t на мою колезі, Удай Ethirajulu).  Переконайтеся, що код jQuery живе всередині "PlaceHolderAdditionalPageHead", як показано:

<ASP:Зміст ContentPlaceholderID = "PlaceHolderAdditionalPageHead" runat = "сервер">

<сценарій

    тип = текст/javascript""

    SRC="/JQuery/Jquery-1.4.min.js">

</сценарій>

<скрипт тип = "текст/javascript">

  $(документ).готові(функція() {

   // Блискучий jQuery речі тут йде.

   });

</сценарій>

</кінець>

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

У похвалу jQuery розширеної-як-ви-типу пошуку (оглянуто Ян Tielens)

Я працюю над BPOS демо (скоро будуть доступні вгору в Microsoft сайту) і я хотів би додати трохи лаковані. Я знав про Ян Tielen зусилля для досить довгий час і я подумав, було б дуже технічний, щоб додати до демо, так я і зробив. Ви можете прочитати про це тут: http://weblogs.asp.net/jan/archive/2009/07/02/sharepoint-search-as-you-type-with-jquery.aspx. Це так просто використовувати його, ймовірно, має бути злочином (і, можливо, це десь).

Я додати тільки два вказує на те, що він вже створили / Написав про:

  1. Це робить, Насправді, працювати в муніципалітет BPOS (SharePoint онлайн) навколишнє середовище.
  2. Змусити її працювати без дратівливих спливаючих повідомлень префікса посилання на бібліотеку jquery з https, а не http, як і в:
<скрипт типу ="текст/javascript" src ="https://Ajax.googleapis.com/AJAX/libs/Jquery/1.3.2/JQuery.min.js"></сценарій>

Ян вказує на те, що ви ймовірно повинні рухатися самій бібліотеці на ваш сайт. Відчуття трохи ледачим сьогодні, I decided to blog about it instead 🙂

</кінець>

Це ще один пост в моєму поточної серії про те, як використовувати jQuery з SharePoint.
Якщо ви хочете дізнатися більше про jQuery, Я настійно рекомендую: jQuery в дії Ведмідь Bibeault і Ієгуда Кац.

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Бірки Technorati:

Здається, забезпечення SharePoint список/документ бібліотека переглядів (Сортувати) Це можливо з jQuery

Це ще один пост в моєму поточної серії про те, як використовувати jQuery з SharePoint.
Якщо ви хочете дізнатися більше про jQuery, Я настійно рекомендую: jQuery в дії Ведмідь Bibeault і Ієгуда Кац.

Одна з перших речей, які я думав, як тільки я почав грати з jQuery, було, чи ми могли б використовувати для забезпечення подання SharePoint. Відповідь "ні" (або, принаймні, Я не стверджую, можна). Однак, Звичайно можна зробити це важко для людей, щоб побачити певного подання.

Я почав з мого пісочницю навколишнього середовища при роботі з цього. Я писав про що навколишнє середовище: Швидкий і простий: Створіть свій власний jQuery пісочниці для SharePoint.

"Забезпечити" подання, виконайте такі дії.:

  1. Створити подання, щоб забезпечити. Я зробив це і назвав його "Забезпечені видом".

    Це, як він виглядає, коли він не "захищений":

    image

  2. Додати веб-частини редактора вмісту в поданні сторінки за допомогою трюк, описані у статті пісочниці (тобто. Додати "переглядах = спільний&ToolPaneView = 2" за URL-адресою).
  3. З'ясувати _spUserId вашого SharePoint, виконавши такі божевільні, вірити чи ні:
    1. Увійти у вашому середовищі SharePoint.
    2. У полі адреси веб-браузера, тип: "javascript:оповіщення(_spUserId").
    3. Запис результат (Це "13" в моєму випадку).

      image

  4. Наступні javascript додати на ваші CEWP у поданні коду:

    <скрипт типу ="текст/javascript"
        src ="../../JQuery Library/Jquery-1.3.2.min.js">
    </сценарій>
    
    <скрипт типу ="текст/javascript">
      $(функція() {
    
        оповіщення(_spUserId);
    
        VAR theSecuredView = $(' iframe[FilterLink * = забезпечені % 20View]');
    
        Якщо ((theSecuredView.length > 0) && (_spUserId = = 13))
          $(' iframe[FilterLink * = забезпечені % 20View]').батьків().батьків().батьків().HTML("<TR bgcolor = червоний><TD>Немає подання для вас!</TD></TR>");
      });
    
    </сценарій>
    

Я включив це попередження(_spUserId) лінія продемонструвати, як це не там дійсно є "забезпечення" подання, але просто робить його більш важким, щоб побачити. Докладніше про це в хвилину.

В основному, jQuery шукає iFrame на сторінці, який має атрибут, який містить "Забезпечені % 20View" в його значення. Після того, як він вважає за, Ми перевірити, якщо поточний користувач є "13". Якщо це, Ми підійти DOM до на <TR> Тег (який я зрозумів, шляхом перегляду джерела і відстеження його) і потім замінити цей тег TR моє повідомлення. Я дійсно не знаю, наскільки надійною це (Я дуже підозріло, Насправді), але вона працювала в моєму пісочниці. Якщо я можу знайти кращого способу, Я блог про це. Це є результатом:

image

Я натискаю кнопку ОК і дані замінюються великий червоний повідомлення:

image

Як ви можете сказати, шляху, я вже реалізації цього рішення "безпеки" є дозволити веб-частини, щоб зробити сам. Після того, як вона закінчується, Я перезаписати його зміст з моєї "немає подання для вас!"повідомлення.

Незважаючи на те, що це не дійсно є "забезпечених '" подання, Це потенційно корисний і деякі розумні роботи, Врешті-решт може бути захищеним в більш формальної сенсі. Фундаментальні питання в тому, що клієнт отримує всі дані і потім, тільки після того, як вона отримує дані, Це призводить до видалення його. Якщо клієнт отримує дані, розумний користувач може запобігти працює на всіх jQuery і бачити те, що він/вона хоче бачити.

Є й інші недоліки. Такий підхід «безпека» побудована на базі за _spUserId. Ми хотіли б дійсно безпечною на основі повної модель безпеки SharePoint, або, принаймні, ім'я користувача. Що стає все важче, але я бачу, що деякі хороші речі на цю тему написано, так що я сподіваюся, що є хороший відповідь на цю проблему.

До списку виглядів, самі повинні бути обрізані, Якщо це можливо. Я не пробував, щоб з'ясувати, що. Я припускаю, що це можливо, але дійсно не вирішить проблему фундаментальних безпеки, тому що хтось міг ще тільки Введіть URL-вважає, що вони хочуть (Якби вони знали, що це). Однак, підрізання має сенс. Це функція, хороший юзабіліті і це допомагає затуманити речей. Якщо кінцевий користувач не знає, що існує перегляд подій, вони, ймовірно, не буде намагатися використовувати його. Іноді, Це достатньо.

Якщо пощастить, Я ще писати на цю тему з часом.

</кінець>

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Бірки Technorati: ,,

del.icio.us Мітки: ,,

Швидкий і простий: Кращий спосіб для використання jQuery приховати текстового поля у формі SharePoint

Це ще один пост в моєму поточної серії про те, як використовувати jQuery з SharePoint.
Якщо ви хочете дізнатися більше про jQuery, Я настійно рекомендую: jQuery в дії Ведмідь Bibeault і Ієгуда Кац.

Раніше, Я писав про те, як використовувати jQuery, щоб знаходити та приховувати текстового поля у формі. Я не піклуватися специфічний підхід (Я був ланцюжки батьків – це просто робиться не ці дні, по крайней мере в сім'ях-якості).

Коли я вперше почав думати про це, Я знав, що мені потрібно, щоб знайти в <TR> до якої я міг би посилатися приховувати() метод. Мого раннього зусиль, щоб знайти правильне <TR> було щось на зразок цього:

$(' tr:має(Вхід[заголовок = приховати мене!])');

Проблема, яка, що він хотів би знайти кожен <TR> тег, який мене з будь-якого батьківський зв'язок з пунктом приховувати! поле, навіть якщо приховати мене! є вкладеними багато рівнів глибоко в <TR>у. Виявляється, що у формі на пісочниці, Цей вираз знаходить 9 різні TR, які мають приховати мене! у дитинстві десь у його дім дерево. Я зрозумів, що я міг ходити резервне копіювання дерево з поля введення, себе, Так ось, як я потрапив зловживають батьків, але це не сидять добре мені.

Я дав деякі думки до цього, і одна з речей, які я читав нарешті мало сенс: Я міг би використовувати не() метод, щоб відсікти <TR>у, я не хочу в мій загорнуті набір. Що привело мене до цього:

$(' tr:має(Вхід[заголовок = приховати мене!])').не(' tr:має(TR)').приховати();

Перший біт знаходить всі на <TR> Теги, які приховувати мені! поле будь-де в своїх власних ієрархії. Це потім смужками на якійсь <TR> Це також мати дитину <TR>. Це залишає нам з одним <TR> що:

1) Не має <TR> дочірні записи

2) Чи є поле введення як дитина.

Потім можна застосовувати приховувати() метод отриманий набір і ми зробили.

Я все ще трохи нервує з цього приводу, але не як нервова, як ланцюжки батьків.

Я не знаю, якщо це найкраща практика чи ні. Там може бути більш підходящим способом виявлення лише до <TR> що ми піклуємося про у вигляді SharePoint. Якщо ви знаєте, будь ласка, пост коментар.

</кінець>

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Бірки Technorati: ,

Швидкий і простий: Приховати текстового поля у формі SharePoint за допомогою jQuery

Це ще один пост в моєму поточної серії про те, як використовувати jQuery з SharePoint.
Якщо ви хочете дізнатися більше про jQuery, Я настійно рекомендую: jQuery в дії Ведмідь Bibeault і Ієгуда Кац.

ОНОВЛЕННЯ (вже!): Я думаю, що кращого способу, щоб знайти в <TR> тег, я хочу, щоб приховати і пише про це тут. Ви можете все ще знайти цю статтю цікаві все одно так що я leavnig його вгору.

Я хочу, щоб приховати текстові поля, "Приховати мене!"як показано на малюнку:

image

Наступні jQuery робить свою справу для мене:

<скрипт типу ="текст/javascript">

  $(функція() {


    $(' вводу[заголовок = приховати мене!]').батьків().батьків().батьків().приховати();

  });

</сценарій>

Код каже:, «знайти мене все вводу поля яких заголовок = приховати мене!. Потім, отримати його батьків і потім наступне батьків і в * далі * батьків (Тьху!) та викликати приховувати() метод з цією штукою, чим би він трапляється.

Я зрозумів, що батько структури перегляд HTML-код для форми, яка створена SharePoint, як показано:

<TR>
    <TD nowrap= "true" valign= "Топ-" Ширина= "190px" клас= "ms-formlabel">
        <H3 клас= "ms-standardheader">
            <nobr>Приховати мене!</nobr>
        </H3>
    </TD>

    <TD valign= "Топ-" клас= "ms-formbody" Ширина= "400px">
        <!-- Ім'я поля = "Сховати мене!"
                 FieldInternalName = "Hide_x0020_Me_x0021_"
                 FieldType = "SPFieldText"
        -->
        <Тривалість DIR= "нічого не">
            <Вхід
                Ім’я= "m$ ctl00$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField"
                тип= "текст"
                maxlength= "255"
                ID= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
                Назва= "Сховати мене!"
                клас= "ms Лонг" />
                <br>
        </Тривалість>


    </TD>
</TR>

Ця картина показує той же, але розмічені з батьками:

image

Перший батьків (1) є прольоті тегів. В прольоті батьків (2) Існує TD тег і потім нарешті ми перейдемо до реального батьків, я хочу, щоб приховати (3) яка є TR тег, сам.

Це досить страшно підхід, я думаю, тому що це надзвичайно залежними від дуже конкретної структури цієї форми. Коли SharePoint 2010 виходить, Цей всієї структури могли б змінити і розірвати цей підхід. Те, що я дійсно хочу зробити це ремесло jQuery selector, що це по аналогії з "знайти мене всі тр (і тільки теги TR) що є десь у свої дочірні елементи полем введення якого заголовок = приховати мене!”. Я починаючи знизу і рухатися. Припускаючи, що я з'ясувати це, Я відправлю поновлений "швидкий і легкий ' повідомлення.

</кінець>

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

del.icio.us Мітки: ,

Бірки Technorati: ,

Швидкий і простий: Створіть свій власний jQuery пісочниці для SharePoint

Це ще один пост в моєму поточної серії про те, як використовувати jQuery з SharePoint.
Якщо ви хочете дізнатися більше про jQuery, Я настійно рекомендую: jQuery в дії Ведмідь Bibeault і Ієгуда Кац.

Початок роботи з jQuery в SharePoint є напрочуд легко (Мені). (У мене є серйозні питання про "передового досвіду" підхід до розгортання цих речей для виробництва, але це ще один день). Я тільки почав грати з цією технологією і з цією метою, Я створив пісочниці середовище для використання. Якщо ви хочете, щоб почати роботу з jQuery, Ви можете знайти корисну такий підхід.

1. Створити пустий сайт

Створити пусту сайту десь у ваш сайт і називають це те, що розумний, як "jQuery пісочниці".

2. Завантажити jQuery

Ви можете завантажити jQuery javascript бібліотеки тут: http://docs.jquery.com/Downloading_jQuery

Зберегти її на робочому столі.

Я використав "minified" версія.

3. Створити бібліотеку документів SharePoint

В пісочницю сайті, створити бібліотеку документів.

4. Завантажити jQuery бібліотеки SharePoint

Отримати доступ до бібліотеки doc, ви тільки що створили і завантажити бібліотеку jQuery.

5. Створення настроюваного списку

Я почав з настроюваним списком тому, що я хочу, щоб гидоту з стандартні форми SharePoint. Можна також створити сторінку в бібліотеці сторінок або сторінок веб-частин і, ймовірно, багато інших місць.

Додати деякі стовпці до настроюваного списку, так що у вас є щось для запуску jQuery проти. Мої початкові цілі були до:

  1. Приховати поле.
  2. Призначити значення поля.

З цієї мети на увазі, Я додав два текстових поля. З часом, Я буду граючи з посиланнями, зображення, Пошук, д.

6. Змінити сторінку NewForm.aspx веб-частин і додайте веб-частини редактора вмісту

Це маленький чорний magic-ish , в тому, що це нове поняття для мене. Я вперше дізнався про це від Paul Grenier, SharePoint jQuery суперзірка, у себе на сайті проекту CodePlex: http://spff.codeplex.com/.

Виконайте такі дії, щоб додати на CEWP на тій же сторінці, що показує NewForm.aspx для будь-який Настроюваний список:

  1. Доступу до настроюваного списку і натисніть кнопку Створити.
  2. Додайте наступний за URL-адресою: Переглядах = поділився&ToolPaneView = 2

Це дозволить перетворити ваш нудно ванільний форму для введення даних з щось на зразок цього:

image

До цього:

image

Додати веб-частини редактора вмісту сторінки.

7. Написати ваш перший jQuery код

Відкрити цей CEWP у поданні коду і додати наступні:

image

Ось фактичного код, якщо ви хочете, щоб копіювати/вставити:

<скрипт типу ="текст/javascript"
    src ="../../JQuery Library/Jquery-1.3.2.min.js">
</сценарій>

<скрипт типу ="текст/javascript">
  $(функція() {

    $('#resultsID').HTML('Є' + $('на').розмір() + "на теги Мітки на цій сторінці.");

  });
</сценарій>

Результат:
<DIV id ='resultsID'></DIV>
/Результат

Зверніть увагу, що перший <сценарій> тег посилання фактичного jQuery бібліотеки. Мабуть, ці речі змінюються з плином часу, так що ви хочете, щоб переконатися, що ви на) використовувати праву ім'я та b) Наведіть вказівник на правильний бібліотеки документів SharePoint.

Грітися в славу

Якщо ви зробили це правильно, Ви побачите результат, подібне до нижченаведеного:

image

Підведенню

Це не єдиний спосіб, щоб почати роботу, але швидко, легко і ізольованими від існуючих середовища SharePoint.

</кінець>

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Бірки Technorati: ,

del.icio.us Мітки: ,

Швидкий і простий: Використання jQuery для встановлення A текстові значення поля форми SharePoint

Я почав грати з jQuery вчора. Я давно хотів зробити це протягом тривалого часу, з тих пір Paul Grenier почав писати його серія про jQuery для кінцевих користувачів в знаменитого www.endusersharepoint.com веб-сайт. Як я використовую його, Я сподіваюся, додати серії "Швидкий і легко" повідомлення, як це одне. Цей пост описує як встановити значення відомих текстові поля на все, що ви хочете.

У цьому випадку, Я створив настроюваного списку, чия "нових" форма виглядає, як показано:

image

Це нова форму для настроюваного списку з заголовка стовпця за промовчанням і два стовпці списку (не стовпці сайту; Я не думаю, що він повинен зробити будь-якої різниці).

Мета полягає в тому, щоб призначити довільним значенням поля, "DefaultMeFieldNoSpaces" (Ви можете сказати, що я трохи Боягуз з "без пробілів" річ відбувається, але я оживити її в кінці цієї статті).

Це трохи jQuery, що працював для мене:

<скрипт типу ="текст/javascript">

  $(функція() {

    $(' вводу[заголовок = DefaultMeFieldNoSpaces]').змінення атрибутів(
        {значення: ' Ти в звивистих лабіринт проходи, всі однакові.'});

  });

</сценарій>

Як я розумію, це трохи jQuery говорить, «знайти мене будь-який введення тег чия назва = DefaultMeFieldNoSpaces. Потім, налаштувати всі їхні значення на знамениту фразу з стару гру комп'ютер."

Так як там буде тільки одного поля форми з назвою дорівнює "DefaultMeFieldNoSpaces" ми знаходимося в собі з присвоєнні значення цього поля і ніякі інші.

Як щодо поля, чиє ім'я містить пробіли, його? Це майже те ж саме:

<скрипт типу ="текст/javascript">

  $(функція() {
     $(' вводу[заголовок = призначити поле з простору]').змінення атрибутів(
        {значення: ' Ти в звивистих лабіринт проходи, всі однакові.'});

  });

</сценарій>

Я думаю, що це досить безпечно підхід, Це означає, що ми повинні бути в змозі знайти поле, яке ми хочемо і лише поле ми хочемо, щоб. Якщо ви подивитеся на HTML SharePoint дає нам, Це свого роду безладним:

<Вхід
Ім’я= "m$ ctl00$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField"
тип= "текст"
maxlength= "255"
ID= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
Назва= "DefaultMeFieldNoSpaces"
клас= "ms Лонг"
/>

"заголовок" виділяється як впізнаваним і сподіваюся унікальний атрибут, щоб допомогти нам визначити конкретні стовпці, до якого ми хочемо, щоб привласнити наші довільним значенням.

Основні поняття. Встановлення для поля в довільним чином як це не збирається перемогти будь-якого нагороди. Однак, Якщо ми хочемо зробити більш цікаві форми рівня речі (Ми всі завжди хочу зробити, Звичайно, відразу після того, як ми закінчимо миття посуду), Як змінити значення "поле b" автоматично на основі значення "поле на", Ми (Я) потрібно вивчати ці речі.

Я думаю, що наші найкращі шанси отримати реальної корисної значення тут через титул, принаймні для текстового поля. Там можуть бути краще, надійніше підхід. Якщо я вважаю, це, Я буду оновлювати цей пост. Якщо ви знаєте, що кращого способу, будь ласка, залиште свій коментар.</кінець>

</кінець>

Підписатися на мій блог.

Йди за мною на Twitter в http://www.twitter.com/pagalvin

Бірки Technorati: ,