Rask og enkel: Bruke jQuery å angi a tekst feltets verdi på et SharePoint-skjema

Jeg begynte å spille jQuery i går. Jeg har lyst til å gjøre dette for lenge, helt siden Paul Grenier begynte å skrive hans serie med jQuery for sluttbrukere på den ærverdige www.endusersharepoint.com webområde. Som jeg bruker den, Jeg håper å legge en rekke "Rask og lett" innlegg som dette. Dette innlegget beskriver hvordan sette en kjent tekst feltverdi til alt du vil..

I dette scenariet, Jeg har opprettet en egendefinert liste som "nye" skjemaet ser ut som vist:

image

Dette er den nye formen for en egendefinert liste med standard Tittel-kolonnen og to listekolonner (ikke områdekolonner; Jeg tror ikke det bør gjøre noen forskjell).

Målet er å tilordne en tilfeldig verdi i feltet, "DefaultMeFieldNoSpaces" (Du kan si jeg er litt av en feiging med "ingen mellomrom" ting skjer, men jeg krydre det opp på slutten av denne artikkelen).

Denne litt jQuery arbeidet for meg:

<script type ="text/javascript">

  $(funksjonen() {

    $(' input[tittel = DefaultMeFieldNoSpaces]').attr(
        {verdi: "Du er i en svingete labyrinten av passasjer, alle like. "});

  });

</skriptet>

Som jeg forstår det denne bit av jQuery sier, «finne meg noen innspill merke hvis tittel = DefaultMeFieldNoSpaces. Deretter, sett alle sine verdier til en berømte setning fra en gammel dataspill."

Fordi det bare finnes ett felt i skjemaet med en tittel lik "DefaultMeFieldNoSpaces" er vi sikret av tilordne en verdi til feltet og ingen andre.

Hva med et felt som inneholder mellomrom? Det er nesten det samme:

<script type ="text/javascript">

  $(funksjonen() {
     $(' input[tittel = Tilordne felt med plass]').attr(
        {verdi: "Du er i en svingete labyrinten av passasjer, alle like. "});

  });

</skriptet>

Jeg tror dette er en ganske trygg tilnærming, betyr at vi skal kunne finne det vi vil og bare feltet ønsker vi. Hvis du ser på gir HTML SharePoint oss, Det er slags rotete:

<inngang
navn= "ctl00$ m$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField"
type= "tekst"
MaxLength= "255"
ID= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField"
tittel= "DefaultMeFieldNoSpaces"
klassen= "ms lang"
/>

"tittel" skiller seg ut som et gjenkjennelig og forhåpentligvis unike å hjelpe oss med å identifisere bestemte kolonnen som vi vil tildele våre vilkårlig verdi.

Dette er et grunnleggende begrep. Sette et felt på en vilkårlig måte som dette kommer ikke til å vinne noen priser. Men, Hvis vi ønsker å gjøre mer interessant form nivå ting (som alle oss alltid ønsker å gjøre, selvfølgelig, rett etter at vi vaske oppvasken), som endre verdien til "feltet b" automatisk basert på verdien av "feltet en", Vi (JEG) trenger å lære disse tingene.

Jeg tror vår beste sjanse til å få en virkelig nyttig verdi her er via tittelen, minst for tekstfelt. Det kan være en bedre, sikrere tilnærming. Hvis jeg finner det, Jeg vil oppdatere dette innlegget. Hvis du kjenner en bedre måte, Legg igjen en kommentar.</slutten>

</slutten>

Abonner på bloggen min.

Følg meg på Twitter på http://www.twitter.com/pagalvin

Technorati Merkelapper: ,

5 tanker om “Rask og enkel: Bruke jQuery å angi a tekst feltets verdi på et SharePoint-skjema

  1. Paul Galvin

    Oskar, Jeg har ikke en tilnærming som ennå fordi jeg har bare nettopp begynt å bruke den til å spille rundt. Som jeg begynner å bruke det i et produksjonsmiljø vil jeg definitivt skrive om min erfaring.

    Takk for linken til spjqueryfield.

    Svar
  2. Oskar Austegard

    Paul, Hva er din holdning sprøytebrukere javascript i redigeringssiden? Dermed i en deployerbar, enkel måte er litt kinkig, så vidt jeg er bekymret. Du virkelig trenger ikke å opprette et egendefinert skjema hver gang… Jeg tror dette, http://spjqueryfield.codeplex.com/ , er en god start. Distribuere den gang, deretter bruke på nytt etter behov…

    Svar

legg igjen et svar

e-postadressen din vil ikke offentliggjøres. Obligatoriske felt er merket *