CLR: .Net / Mono / Boo / Otros CLR > ASP .NET

 Llamar Funcion Vb Desde Funcion Javascript

<< < (2/4) > >>

josu:
probablemente no me funciono por que no lo utilizaria de la forma correcta pero no le e podido dar el tiempo necesario para analizarlo bien. cuando retome este asunto pondre aqui como lo hice y beremos en que me equiboco.

te agradezco mucho tu ofrecimiento para ayudarme un saludo.

ing_marco:
Bueno entonces dejamos eso pendiente
hasta que te desocupes.

Atte
Ing_Marco

josu:
hola,
me encuentro un poquito mas libre y le puedo dedicar algo de tiempo al problema que tenia con ajax.
te comento lo que tengo echo y los pasos que e ido dando. :comp:
1)me descarge el ajax.dll y lo agrege como refencia a mi proyecto.
2)en el webconfig le puse estas lineas:
<httpHandlers>
<add verb="POST,GET" path="ajaxwrapper/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
</httpHandlers>
3)como se supone que mi aplicacion ya esta preparado para utilizar ajax me puse a probar ejemplos que localizaba en la red y te pongo aqui el ultimo ejemplo que e utilizado:

en el lado visual basic:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Ajax.Utility.RegisterTypeForAjax(GetType(WebForm1))
End Sub

<Ajax.AjaxMethod()> _
Public Function GetMessageOfTheDay() As String
Return "Experience is the mother of wisdom"
End Function

en el lado html:

<script language="javascript">
WebForm1.GetMessageOfTheDay(GetMessageOfTheDay_CallBack);
function GetMessageOfTheDay_CallBack(response)
{
alert(response.value);
}

</script>

</HEAD>
<body onload="window.setTimeout('GetMessageOfTheDay_CallBack()',1000);" MS_POSITIONING="GridLayout">

este es un ejemplo que encontre concretamente en los msdn de microsoft aunque anteriormente e probado con otros ejemplos pero tampoco me funcionaba, y no se es un ejemplo muy sencillo y no entiendo por que no funciona :brickwall:
cuando tengas un momento si le echas un vistazo para haber en que me equivoco te lo agradeceria mucho.

tambien queria comentar por si sirve de ayuda que utiliza el framework 1.1 y el visual studio 2003.

un saludo y gracias por ayudarme :hola:

ing_marco:
Pues segun veo no hay error en tu codigo.
Ahora solo falta limar lgunos detalles
como por ejemplo:
Como se llama la clase del formulario, si se llama WebForm1, entonces esta bien.
Segundo.
Preferiria que tu manejes mejor tu cuando sera llamada la funcion del servidor y eso de esta manera:


--- Código: Text ---&#60;script&#62;Function PedirMensaje(){WebForm1.GetMessageOfTheDay(GetMessageOfTheDay_CallBack); }&#60;/script&#62; Luego en el Onload del body pones esto:


--- Código: Text ---&#60;body onload=&#34;javascript:PedirMensaje()&#34; MS_POSITIONING=&#34;GridLayout&#34;&#62;  
Otra cosa que debes de verificar es:
Si la pagina muesta algun error, eso se ve en la parte inferior de la pagina un signo de adminaracion, al dar click alli te dice sobre los errores de la pagina.
Otra cosa que podrias hacer es poner un punto de interrupcion en la funcion del servidor de modo que te aseguras que esta siendo llamada.

Prueba todo eso y verifica si funciona, caso contrario vuelves a postear para poder segur viendo tu caso.

josu:
e probado lo que as dicho y sigue sin funcionar :hitcomp: te pongo aqui como lo tengo echo ahora: :comp:

en vb (como tenia antes):

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Ajax.Utility.RegisterTypeForAjax(GetType(WebForm1))
End Sub

<Ajax.AjaxMethod()> _
Public Function GetMessageOfTheDay() As String
Return "Experience is the mother of wisdom"
End Function

en el lado html (con los canbios que me dijiste):

<script language="javascript">
function PedirMensaje()
{
    WebForm1.GetMessageOfTheDay(GetMessageOfTheDay_CallBack);
}

function GetMessageOfTheDay_CallBack(response)
{
    alert(response.value);
}
</script>
</HEAD>
<body onload="javascript:PedirMensaje()" MS_POSITIONING="GridLayout">
     <form id="WebForm1" method="post" runat="server">
     </form>
</body>
</HTML>

cuando clickeo en el icono del error me pone esto:

Linea: 14
Car: 5
Error: el objeto no acepta esta propiedad o metodo
Codigo: 0
URL: http://ejemploajax/WebForm1.aspx

la linea 14 seria esta:
WebForm1.GetMessageOfTheDay(GetMessageOfTheDay_CallBack);

tambien e puesto el punto de interrupcion en la funcion vb y no llega a hacer la llamada no llega a ejecutarse esta funcion vb.

no se que puede fallar, si tienes un momento le echas un vistazo please.

un saludo y muchas gracias por ayudarme. :hola:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa