Започнах да играя наоколо с jQuery вчера. Аз бях искат да направят това за дълго време, откакто Пол Grenier започва да пише серията си за jQuery за крайните потребители на преподобния www.endusersharepoint.com уеб сайт. Както аз го използвам, Надявам се да добавите поредица от "Бърз и лесен" постове като този. Тази публикация се описва как да настроите известно текстово поле на стойността на всичко, което искате.
В този сценарий, Аз създали потребителски списък, чиито "нов" формуляр изглежда както е показано:
Това е нов формуляр за потребителски списък със заглавие на колона по подразбиране и две колони на списък (не колони на сайт; Аз не мисля, че тя трябва да прави разлика).
Целта е да се присвои на произволна стойност на полето, "DefaultMeFieldNoSpaces" (Можете да кажете, аз съм малко на страхливец с "без интервали" нещо се случва, но аз го подправка в края на тази статия).
Това малко на jQuery е работил за мен:
<скрипт тип ="текст/javascript"> $(функция() { $("въвеждане[Заглавие = DefaultMeFieldNoSpaces]').attr( {стойност: "Вие сте в нечестен лабиринт на пасажи, всички така. "}); }); </скрипт>
Както аз го разбирам това малко на jQuery казва, "Намери ме всеки вход етикет чието заглавие = DefaultMeFieldNoSpaces. След това, намира всички от техните стойности с известната фраза от стар компютър игра."
Тъй като там ще бъде едно поле във формуляра със звание, равно на "DefaultMeFieldNoSpaces" ние сме уверени в определянето на стойността в това поле и няма други.
Какво да кажем за дадено поле, чието име е пространства в него? Това е почти същото:
<скрипт тип ="текст/javascript"> $(функция() { $("въвеждане[Заглавие = присвоите поле с пространство]').attr( {стойност: "Вие сте в нечестен лабиринт на пасажи, всички така. "}); }); </скрипт>
Мисля, че това е сравнително безопасен подход, което означава, че ние трябва да бъде в състояние да намери само поле и полето, което искаме ние искаме. Ако погледнете на HTML SharePoint ни дава, Това е някак разхвърлян:
<вход Име= "ctl00$ m$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField" тип= "текст" maxlength= "255" ИД= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField" заглавие= "DefaultMeFieldNoSpaces" клас= "ms дълго" />
"заглавие" се откроява като разпознаваем и дано уникален атрибут да ни помогнат да идентифицираме специфичните колона, които искате да присвоите на нашите произволна стойност.
Това е фундаментална концепция. Създаване на поле по произволен начин като този няма да спечелите някоя от наградите. Въпреки това, Ако искаме да направим по-интересна форма ниво неща (който всички от нас винаги искам да направя, Разбира се, веднага след като приключим, миене на съдове), като промяна на стойността на "област б" автоматично на базата на стойността на "полето", Ние (АЗ) трябва да се научат тези неща.
Мисля, че нашите най-добрия шанс да получите истински полезна стойност тук е чрез заглавието, поне за текстови полета. Може да има по-добро, по-надежден подход. Ако го намеря, Ще актуализирам този пост. Ако знаете по-добър начин, Моля, оставете коментар.</край>
</край>
Следвайте ме на Twitter в http://www.twitter.com/pagalvin
Здравей Пол – Аз дойдох в своя пост, докато проучване за подобен проблем :-
Задаване времетраенето по подразбиране за нови събития в календара.
http://blog.pentalogic.net/2009/09/setting-default-duration-for-new-calender-events/
Има един трик за получаване на скрипта в новия формуляр – не си умни като spjqueryfield или spff, но неговата голяма за бърз рана.
Кристоф, Благодаря за връзката!
Оскар, Аз нямам подход все още защото аз едва започнаха да го използват да си поиграем. Като започна да го използвате в производствена среда, аз определено ще пиша за моя опит.
Благодаря за връзката към spjqueryfield.
Пол, Каква е вашата подход за инжектиране на javascript в страницата за редактиране? Това в тези системи, прост начин е сложната малко, Що се отнася до Загрижен съм. Вие наистина не трябва да създадете персонализиран формуляр всеки път… Мисля, че това, http://spjqueryfield.codeplex.com/ , е един добър старт. Го разположи веднъж, след това използвате повторно, ако е необходимо…
Пол има Codeplex проект за манипулиране на SharePoint формулярни полета:
http://spff.codeplex.com/