Ver Mensaje Individual
  #4 (permalink)  
Antiguo 27/06/2005, 15:14
Avatar de RicaJ0625
RicaJ0625
 
Fecha de Ingreso: noviembre-2004
Ubicación: La Chorrera, Panamá
Mensajes: 86
Antigüedad: 19 años, 6 meses
Puntos: 0
Si se hace esto saldria un error de Javascript ya que cuando se escribe el control a la pagina se hace de esta forma.

<span id="RequiredFieldValidator1" controltovalidate="Text1" errormessage="Required field!" evaluationfunction="RequiredFieldValidatorEvaluate IsValid" initialvalue="" style="color:Red;Z-INDEX:129;LEFT:280px;POSITION:absolute;TOP:449px;v isibility:hidden;">Required </span>

Codigo de la función que inicializa los validadores

function ValidatorOnLoad() {
if (typeof(Page_Validators) == "undefined")
return;
var i, val;
for (i = 0; i < Page_Validators.length; i++) {
val = Page_Validators[i];
if (typeof(val.evaluationfunction) == "string") {
eval("val.evaluationfunction = " + val.evaluationfunction + ";");
}
if (typeof(val.isvalid) == "string") {
if (val.isvalid == "False") {
val.isvalid = false;
Page_IsValid = false;
}
else {
val.isvalid = true;
}
} else {
val.isvalid = true;
}
if (typeof(val.enabled) == "string") {
val.enabled = (val.enabled != "False");
}
ValidatorHookupControlID(val.controltovalidate, val);
ValidatorHookupControlID(val.controlhookup, val);
}
Page_ValidationActive = true;
}


En IE se puede utilizar val.evaluationfunction
Netscape y Mozilla retornan undefined porque evaluationfunction esta definido dentro del HTML Tag

Para poder accesarlo desde Netscape o Mozilla se debe utilizar el getAttribute
y seria asi val.getAttribute("evaluationfunction") y tendria que cambiarse la linea asi typeof(eval(val.getAttribute("evaluationfunction"))) para que trabaje con Netscape o Mozilla o Firefox

Esto lo arreglan en la nueva version ya que hacen esto en la pagina:

<span id="RequiredFieldValidator1" style="color:Red;Z-INDEX:129;LEFT:280px;POSITION:absolute;TOP:449px;v isibility:hidden;">Required </span>

<script type="text/javascript">
<!--
var RequiredFieldValidator1 = document.all ? document.all["RequiredFieldValidator1"] : document.getElementById("RequiredFieldValidator1") ;
RequiredFieldValidator1.controltovalidate = "Text1";
RequiredFieldValidator1.evaluationfunction = "RequiredFieldValidatorEvaluateIsValid";
RequiredFieldValidator1.initialvalue = "";
RequiredFieldValidator1.errormessage="Required field!"
// -->
</script>

Saludos a todos

Ricaute