Tengo un hipervínculo que necesito registrar cuando se hace clic.¿Cómo puedo registrar un enlace?
Creé un pequeño prototipo, y el problema se puede repetir creando un nuevo proyecto de aplicación web MVC 2.
Añadir
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
al archivo Site.Master.
Y
public ActionResult LogSomething()
{
string doNothing = DateTime.Now.ToString();
return new EmptyResult();
}
a los HomeController.cs el archivo
Ponga un punto de quiebre en la LogSomething() la acción
Y
<p>
<a id="lnkTestPost" href="/home/about">Test Post</a>
<script type="text/javascript">
$("#lnkTestPost").click(function() {
$.post("/home/LogSomething");
});
</script>
</p>
en Inicio/Index.aspx método en el HomeController.
Pero cuando lo ejecuto, a veces se golpea el punto de interrupción, otras veces no lo es.
Supongo que no está siendo golpeado debido al enlace real que envía el navegador a otra página, pero ¿no debería publicarse antes de que se active el enlace?
¿De todos modos puedo asegurarme de que el código de registro se active?
Tenga en cuenta; agregar la funcionalidad de registro en el destino del enlace no es una opción.
EDITAR: El hipervínculo original es en realidad un protocolo personalizado para una aplicación instalada en la PC del usuario. Entonces el enlace es algo así como "myapp: myArgs". No mencioné eso para mantener las cosas simples, lamentablemente, ya que ninguna de las respuestas realmente se aplica a mí, ahora creo que es necesario mencionarlo.
Lo intenté, pero no siempre funciona –
Además, eso se romperá horriblemente con, por ejemplo, "abrir en una pestaña nueva". –
@John, ¿de qué manera no siempre funciona? No sufre los problemas de sincronización que tiene tu código. –