Me estoy volviendo loco intentando desvincular un controlador onclick del evento en jQuery para poder enlazarlo más tarde a otra función.jquery unbind click
me han aislado el código en una página de prueba por lo que no es nada más que la carne, sólo un botón que llama a una función y un guión que intentos para desvincularla:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<script src="../../Scripts/jquery-1.3.2.min.js" type="text/javascript">
</script>
<script src="../../Scripts/jquery-1.3.2.js" type="text/javascript">
</script>
<script type="text/javascript" language="javascript">
$(document).ready(function() { $("#btnNext").unbind('click'); });
function hi() {window.alert("hi");}
</script>
</head>
<body>
<input id="btnNext" type="button" value="Next" onclick="hi();" />
</body>
</html>
Alguien sabe por qué el clic evento sigue llamando a la función hi() sin importar lo que dije en el documento. ¿listo?
Gracias
¿Quiere decir que todo lo establecido en modo declarativo no se puede desvincular de esta manera? – antonioh
correcto, tal vez puedas desvincularlo por $ ("# btnNext"). Attr ('onclick', '') ... pero es mejor hacer todos tus enlaces con jQuery. Es mucho más limpio y menos confuso. Es fácil olvidarse de los javascript que ha agregado en sus atributos. ;) –
Bueno, ahora entiendo por qué no funcionó. Haré la encuadernación como dices. ¡Gracias! – antonioh