Estoy tratando de llamar a mi función JS que agregué en el encabezado. Encuentre el código a continuación que muestra el escenario de mi problema. Nota: No tengo acceso al cuerpo de mi aplicación. Cada vez que hago clic en el elemento con id="Save"
solo llama f1()
pero no fun()
. ¿Cómo puedo hacer que llame incluso a mi fun()
? Por favor ayuda.
<!DOCTYPE html>
<html>
<head>
<script>
document.getElementById("Save").onclick = function fun()
{
alert("hello");
//validation code to see State field is mandatory.
}
function f1()
{
alert("f1 called");
//form validation that recalls the page showing with supplied inputs.
}
</script>
</head>
<body>
<form name="form1" id="form1" method="post">
State:
<select id="state ID">
<option></option>
<option value="ap">ap</option>
<option value="bp">bp</option>
</select>
</form>
<table><tr><td id="Save" onclick="f1()">click</td></tr></table>
</body>
</html>
Solución del problema
Está intentando adjuntar una función de escucha de eventos antes de que se cargue el elemento. Coloque fun()
dentro de una onload
función de escucha de eventos. Llame f1()
dentro de esta función, ya onclick
que se ignorará el atributo.
function f1() {
alert("f1 called");
//form validation that recalls the page showing with supplied inputs.
}
window.onload = function() {
document.getElementById("Save").onclick = function fun() {
alert("hello");
f1();
//validation code to see State field is mandatory.
}
}
JSFiddle
No hay comentarios:
Publicar un comentario