Això és un altre post en el meu sèrie en curs damunt com utilitzar jQuery amb SharePoint.
Si voleu més informació sobre com jQuery, Altament recomano: jQuery en acció per l'ós Bibeault i Yehuda Katz.
Prèviament, Vaig escriure sobre com utilitzar jQuery per localitzar i amagar un camp de text en un formulari. M'importava per a l'enfocament específic (Jo estava encadenament pares-que és simplement no és fet aquests dies, com a mínim a les famílies de qualitat).
Quan vaig començar a pensar-hi, Jo sabia que havia de trobar un <TR> per que jo podria invocar l'amagatall() mètode. Meu primer esforç per trobar el correcte <TR> va ser alguna cosa com això:
$(' tr:ha(entrada[title = amagar-Me!])');
El problema amb això és que es troben cada <TR> Etiqueta que tenia qualsevol relació pare a l'amagatall m! camp, fins i tot si amagar-Me! és niat profund en molts nivells <TR>és. Resulta que en la meva forma de sorrera, troba que l'expressió 9 diferents TR que tenen amagar-Me! com un nen en algun lloc de l'arbre DOM. Em vaig adonar que podien caminar altra vegada cap amunt de l'arbre des del camp d'entrada es, Així que és com vaig acabar abusar de pares, però això no es senti bé amb mi.
Em va donar una mica de pensament a això i una de les coses que he llegit finalment va tenir sentit: Podria utilitzar el no() mètode de retallar fora <TR>és que no vull en la meva set embolicat. Que em va portar a aquest:
$(' tr:ha(entrada[title = amagar-Me!])').no(' tr:ha(tr)').Amaga();
La primera mica troba tots els <TR> Etiquetes que tenen l'amagatall m! camp en qualsevol lloc de la seva pròpia jerarquia. Llavors es despulla fora qualsevol <TR> que també tenen un nen <TR>. Això ens deixa amb un sol <TR> que:
1) No té <TR> registres de nen
2) Tenen el camp d'entrada com a nen.
Després es poden aplicar l'amagatall() mètode a la resultant conjunt i se'ns fa.
Encara estic una mica nerviós sobre això, però no tan nerviosa com els pares d'encadenament.
No sé si això és una bona pràctica o no. Hi pot haver una forma més adequada d'identificar a les <TR> que ens importa un formulari del SharePoint. Si vostè sap, Si us plau enviar un comentari.
</final>
Follow me on Twitter http://www.twitter.com/pagalvin
Hola Pau,
Paul Culmsee de Workarounds intel ligent va escriure un article sobre exactament el mateix tema (trobar la correcta TR per amagar un camp) utilitzant JavaScript simple, no jQuery. Va trobar una manera universal per trobar la TR d'amagar, és al final d'aquest blogpost : http://www.cleverworkarounds.com/2008/02/07/more-sharepoint-branding-customisation-using-javascript-part-1/
esperança que ajudi,
Jonathan
Pingback: Amagar un camp a un formulari d'edició SharePoint basat en altres valors « jbmurphy.com