Rapid şi uşor: Utilizarea jQuery pentru a seta un câmp Text de valoare dintr-un formular de SharePoint

Am început să joc în jurul cu jQuery ieri. Am fost doresc să facă acest lucru pentru o lungă perioadă de timp, inca de la Paul Grenier a început să scrie seria lui despre jQuery pentru utilizatorii finali la venerabilei www.endusersharepoint.com site-ul web. Ca sa-l folosesc, Sper să adăugaţi o serie de "Rapid şi uşor" posturi ca acesta. Acest post descrie cum să setaţi valoarea unui câmp text cunoscut la tot ce vrei.

În acest scenariu, Am creat o listă particularizată al cărui formular "nou" arata ca:

image

Aceasta este forma noi pentru o listă particularizată cu coloana titlu implicit şi două coloane de listă (nu site-ul coloane; Nu cred că ea ar face nici o diferenţă).

Obiectivul este de a atribui o valoare arbitrară câmpul, "DefaultMeFieldNoSpaces" (vă pot spune eu sunt un pic de un laş cu lucru "fără spaţii" merge, dar condiment-l la sfârşitul acestui articol).

Acest bit de jQuery worked pentru eu:

<script-ul de tip ="text/javascript">

  $(funcţia() {

    $(' intrare[title = DefaultMeFieldNoSpaces]').attr(
        {valoarea: "Sunteţi într-un labirint twisty de pasaje, toate deopotrivă. "});

  });

</script-ul>

Aşa cum am înţeles acest pic de jQuery este de a spune, "Găseşte-mi orice intrare tag-ul al cărui titlu = DefaultMeFieldNoSpaces. Apoi, Setaţi toate valorile lor la o expresie celebru la un joc de calculator vechi."

Deoarece va fi doar un câmp din formular cu un titlu egal cu "DefaultMeFieldNoSpaces" ne sunt asigurate de atribuire o valoare la acel câmp nu.

Ce zici de un câmp al cărui nume conţine spaţii în ea? Este aproape la fel:

<script-ul de tip ="text/javascript">

  $(funcţia() {
     $(' intrare[title = asociaţi câmp cu spaţiu]').attr(
        {valoarea: "Sunteţi într-un labirint twisty de pasaje, toate deopotrivă. "});

  });

</script-ul>

Cred că aceasta este o abordare destul de siguranţă, ceea ce înseamnă că noi ar trebui să fie capabil de a găsi că dorim şi câmpul numai vrem. Dacă te uiţi la HTML SharePoint este oferindu-ne, este un fel de murdar:

<intrare
nume= "m$ ctl00$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField"
tip= "text"
maxlength= "255"
ID-ul= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
titlul= "DefaultMeFieldNoSpaces"
Clasa= "ms-lung"
/>

"titlu" iese ca un atribut recunoscut şi sperăm că unic pentru a ne identifica coloana specifice la care ne-o dorim pentru a asocia noastre valoare arbitrară ajuta.

Acesta este un concept fundamentale. Setarea un câmp în mod arbitrar ca acesta nu va câştiga orice premii. Cu toate acestea, Dacă vrem să facem mai interesant forma nivel chestii (care toate dintre noi întotdeauna vreau să fac, desigur, imediat după ce am terminat de feluri de mâncare de spălare), ca modificaţi valoarea "b de câmp" automat pe baza valorii de "câmp un", am (I) trebuie să înveţe aceste lucruri.

Cred noastre mai bună şansă de a obţine o valoare reală util aici este prin intermediul titlul, cel puţin pentru câmpuri text. Poate fi o mai bună, abordare mai fiabile. Dacă mi se pare, Voi actualiza acest post. Dacă ştiţi o modalitate mai bună, vă rugăm să lăsaţi un comentariu.</scop>

</scop>

Aboneaza-te la blog-ul meu.

Urmaţi-mă pe Twitter, la http://www.twitter.com/pagalvin

5 gânduri pe "Rapid şi uşor: Utilizarea jQuery pentru a seta un câmp Text de valoare dintr-un formular de SharePoint

  1. Paul Galvin

    Oskar, Nu am o abordare încă pentru că am început doar folosind-o pentru a juca în jurul. Cum încep să-l folosească într-un mediu de producţie cu siguranta voi scrie despre experienţa mea.

    Multumesc pentru link-ul spjqueryfield.

    Răspuns
  2. Oskar Austegard

    Paul, ce este abordarea dumneavoastră pentru a injecta javascript în pagina Editare? Face acest lucru în o dislocabile, mod simplu este pic dificil, în măsura în care sunt implicate. Într-adevăr nu ar trebui să aveţi pentru a crea o machetă particularizată de fiecare dată… Cred că acest lucru, http://spjqueryfield.codeplex.com/ , este un bun început. Ea implementa o dată, apoi reutilizaţi după cum este necesar…

    Răspuns

lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate *