NewForm.aspx

23/07/2007 - 17:20 por JHenao | Informe spam
Saludos,
Ahi les va este 'reto'.

Necesito llenar un campo del NewForm.aspx (de un calendario) con x valor (no
me sirve un valor predeterminado porque es un valor dinámico).

Como podría hacer esto (en SharePoint 2007)?

Les paso un par de los múltiples intentos fallidos que hice para esto:

Uno de mis intentos fue con este javaScript :
// ****************************************
var thTags=document.getElementsByTagName(""TH"");
for (var x=0;x<thTags.length;x++)
{
if(thTags(x).innerText ==""Description"")
{
thTags(x).parentElement.value="PRUEBA";
}
}
//****************************************
Este script es una personalización de otro que tome por referencia usado
SharePoint 2003.

Otra de las cosas que intenté fue acceder al campo(para eso averigüé el name
que genera SharePoint : un nombre gigante,viendo el source html) algo asi
como:

//*************************
//document.aspnetForm.nameDelText.value = "value"
document.aspnet.ctl$m$g_f45e4309_1d07.value="funciona..porfavor!!"
//*********************************


Agradezco una luz!

JHenao
MCP
Medellín - Colombia
 

Leer las respuestas

#1 Elecktrus
24/07/2007 - 00:34 | Informe spam
hola, JHenao:

No comentas porque no te han funcionado esas pruebas.
El problema con el que yo me encontraba es que para hacer eso mismo tenia
que meter un webpart con el codigo javascript. Y el formulario no me dejaba
editarlo.

Hay 2 salidas:
- la buena: crea una feature que implemente esa lista, y le indicas que la
pagina para new no es la newform.aspx sino una tuya que incluya el webpart
con el codigo javascript
- la mala: utiliza el designer para añadir el webpart (editor de contenido)
con codigo javascript. En este caso, lo malo es que la pagina se 'ghostiza' y
que ademas pierdes la capacidada de adjuntar ficheros.

Si te vale la opcion mala, debe meter dentro del webpart editor de
contenido, algo asi como:
<script>
var campo=document.getElementByID("ctl$m$g_f45e4309_1d07"); //el nombre en
el codigo fuente
campo.value='mi valor'
</script>

Para saber cual es el nombre del control, debes buscar en el codigo fuente
de la pagina, un elemento de tipo <input id='ctl$Sbvvcbvcvc'> asociado a tu
campo y es el valor que va dentro de la etiqueta id='xxxx'

Mucho ojo, porque si añades campos a tu lista (o cambias el orden de las
columnas, el id te cambia). Es recomendable que añadas el webpart solo cuando
la lista ya sea definitiva.

Espero que esto te pueda ayudar


"JHenao" wrote:

Saludos,
Ahi les va este 'reto'.

Necesito llenar un campo del NewForm.aspx (de un calendario) con x valor (no
me sirve un valor predeterminado porque es un valor dinámico).

Como podría hacer esto (en SharePoint 2007)?

Les paso un par de los múltiples intentos fallidos que hice para esto:

Uno de mis intentos fue con este javaScript :
// ****************************************
var thTags=document.getElementsByTagName(""TH"");
for (var x=0;x<thTags.length;x++)
{
if(thTags(x).innerText ==""Description"")
{
thTags(x).parentElement.value="PRUEBA";
}
}
//****************************************
Este script es una personalización de otro que tome por referencia usado
SharePoint 2003.

Otra de las cosas que intenté fue acceder al campo(para eso averigüé el name
que genera SharePoint : un nombre gigante,viendo el source html) algo asi
como:

//*************************
//document.aspnetForm.nameDelText.value = "value"
document.aspnet.ctl$m$g_f45e4309_1d07.value="funciona..porfavor!!"
//*********************************


Agradezco una luz!

JHenao
MCP
Medellín - Colombia

Preguntas similares