Vaig començar a jugar al voltant amb jQuery ahir. He estat volent fer-ho durant molt de temps, des que Paul Grenier va començar a escriure la seva sèrie sobre jQuery per a usuaris finals a la venerable www.endusersharepoint.com lloc web. Com ho ús, Espero afegir que una sèrie de "Ràpid i fàcil" correus com aquest. Aquest post es descriu com definir el valor del camp de un text conegut per tot allò que vol.
En aquest escenari, He creat una llista personalitzada la seva forma "nou" es veu com es Mostra:
Aquesta és la nova forma per a una llista personalitzada amb la columna de títol d'omissió i dues columnes de la llista (no les columnes de llocs; No crec que hauria de fer cap diferència).
L'objectiu és assignar un valor arbitrari al camp., "DefaultMeFieldNoSpaces" (vostè pot dir que sóc una mica d'un covard amb la cosa de "no hi ha espais" passant, però espècia cap amunt al final d'aquest article).
Aquest tros de jQuery treballat per a mi:
<tipus d'escriptura ="text/javascript"> $(funció() { $(' d'entrada[title = DefaultMeFieldNoSpaces]').Attr( {valor: "Estàs en un laberint twisty de passatges, iguals.'}); }); </script>
Com jo ho entenc aquest tros de jQuery està dient, "trobar-me qualsevol aportació etiquetar el títol = DefaultMeFieldNoSpaces. Llavors, Posi tots els seus valors a una frase famós des d'un joc d'ordinador vell."
Ja que només hi haurà un camp en el formulari amb un títol igual a "DefaultMeFieldNoSpaces" Som segura de l'assignació d'un valor a aquest camp i cap altre.
Què passa amb un camp el nom del qual ha prohibit en això? És gairebé el mateix:
<tipus d'escriptura ="text/javascript"> $(funció() { $(' d'entrada[title = Assignar camp amb espai]').Attr( {valor: "Estàs en un laberint twisty de passatges, iguals.'}); }); </script>
Crec que això és un enfocament bastant segur, és a dir que hem de ser capaços de trobar el camp que volem i només el que volem. Si ens fixem en el HTML SharePoint ens està donant, és classe de desordenat:
<entrada nom= "ctl00$ m$ g_bdb23c2c_fde7_495f_8676_69714a308d8e$ ctl00$ ctl04$ ctl02$ ctl00$ ctl00$ ctl04$ ctl00$ ctl00$ TextField" tipus= "text" maxlength= "255" ID= "ctl00_m_g_bdb23c2c_fde7_495f_8676_69714a308d8e_ctl00_ctl04_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00_TextField" títol= "DefaultMeFieldNoSpaces" classe= "ms-long" />
"títol" es destaca com un atribut reconeixible i esperançadorament única per ajudar-nos a identificar la columna a la qual volem Assignar el nostre valor arbitrari.
Aquest és un concepte fonamental. Creació d'un camp de forma arbitrària com aquest no es va guanyar algun premi. No obstant això, Si volem fer coses de nivell de forma més interessants (que tots nosaltres sempre voler a do, clar, bé després que acabi rentar els plats), com canviar el valor de "camp b" automàticament basat en el valor de "camp un", hem (JO) ha d'aprendre aquestes coses.
Crec que la nostra millor oportunitat d'obtenir un valor real útil aquí és via el títol, com a mínim per a camps de text. Hi pot haver una millor, enfocament més fiable. Si em sembla, Vaig a actualitzar aquest post. Si vostè sap millor manera, Si us plau deixar un comentari.</final>
</final>
Follow me on Twitter http://www.twitter.com/pagalvin
Hola Pau – Em vaig trobar amb el seu correu mentre investigava per a un problema similar :-
Creació d'una durada per defecte per al nou calendari d'esdeveniments.
http://blog.pentalogic.net/2009/09/setting-default-duration-for-new-calender-events/
Hi ha un truc polit sobre l'escriptura a la nova forma d'aconseguir – seu no tan llestos com spjqueryfield o spff però la seva gran per un tall ràpid.
Christophe, Gràcies per l'enllaç!
Oskar, No tinc un acostament encara perquè tenen només començava a utilitzar-lo per jugar. Com vaig començar a utilitzar en un entorn de producció definitivament vaig a escriure sobre la meva experiència.
Gràcies per l'enllaç a spjqueryfield.
Paul, Quin és el seu enfocament per injectar javascript en l'editar pàgina? Fer-ho en un desplegament, manera senzilla és la mica complicat, fins on m'ocupo. Realment no hauria de tenir crear una forma de costum cada vegada… Jo crec que això, http://spjqueryfield.codeplex.com/ , és un bon començament. Desplegar una vegada, llavors reutilitzar segons calgui…
Pau hi ha un projecte de Codeplex sobre manipulació camps de formulari del SharePoint:
http://spff.codeplex.com/