AJAX - AJAX (sincronico) y framework 2 (C# .net)

 
Vista:

AJAX (sincronico) y framework 2 (C# .net)

Publicado por Chridtian (2 intervenciones) el 17/03/2012 03:45:56
Hola; como bien dice el titulo mi problema es con AJAX Sincronico en Framework 2.
Para esto uso Visual Studio 2010 y no puedo cambiar la version del framework.

Bueno tengo un Web Site (no un application site). El mismo tiene 4 combos: cliente - proyectos - tareas - subtareas que se cargan entre si. ( o sea un cliente tiene X proyectos y a su vez cada proyecto tiene X Tareas, y asi..... Y por ultimo tengo un calendario.

Este web site me deja seleccionar una opcion de cada combo y guardar en una base de datos.
Por ejemplo podria grabar un ROW con cliente "IBM", proyecto "ABM", tarea "General", Subtarea "desconodo", fecha "2012-06-05".
Puedo guardar muchos rows para una fecha

Ahora bien; ahora tengo que recuperar esos rows guardados ... por lo que cada vez que selecciono un fecha de calendario llamo a un AJAX .Net el cual por el lado server me trae info para llenar los combos anteriores

Por lo tanto una vez que me trajo el JSON hago un "for" y recorro cada registro.
Pero que pasa? Para seleccionar una opcion del combo antes deben estar cargados (OBVIO).

Entonces dinamicamente inserto un rows "<TR>" a mi tabla.... Y ACA EL PROBLEMA!
Tengo que llamar a otros ajax para que me carguen los combos.
Son 4 AJAX a llamar... (cliente, proyecto, tarea, subtarea) y del lado cliente cada uno llamara a su storade y obtendra la data que le corresponde.

Ejemplo

for( Tengo 2 rows )
1 - llamada al ajax de cliente.
2- selecciono una opcion del combo de cliente
3- comboCliente.change(). Por lo tanto desencadeno la llamada a los proyectos de ese cliente
4- asi con lo demas.

EL ERROR:
Es tan rapido el for que se produce asincronismo, o sea no termino de cargar los combos del primer row que ya inserto el segundo row del for y la data del primer row la mete en el segundo (¬¬).

El ajax que utilizo algo como esto:

-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
<INPUT onclick="_Default.nombre_funcion_servidor(parámetro1, parámetro2, ...,
parámetroN, nombre_funcion_servidor_CallBack);"
----------------------------------------------------------------------------
-----------------------------------------------------------------------------
[Ajax.AjaxMethod()]
public DataSet nombre_funcion_servidor((parámetro1, parámetro2, parámetroN)
{
Dataset info = new DataSet();
- aca lo cargo-

return info;
}
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
<script type="text/javascript">
function SumaValores_CallBack(response){
if (response.error != null){
alert("Los valores introducidos no son válidos.");
return;
}
target="contenido";
document.getElementById(target).innerHTML = response.value;
}
</script>

LES ACLARO QUE LOS AJAX FUNCIONAN BIEN. Como me doy cuenta? porque esas funciones ajax son las mismas con las que cargue los rows al principio en la DB.

Ahora bien, como puedo hacer para q estas llamadas sean SINCRONICAS?

Por favor, no me pidan usar AjAx de Jquery porque ya lo probe... pero llamando a un WebMethod de un asmx y me da un error 200 OK! O sea no llega a leer el WebMethod.
SE QUE FUNCIONA BIEN, PORQUE LO PASE A FRAMEWORK 4 Y LO ENCUENTRA. No funca en Framework 2!!!!!

Saludos y Gracias!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

AJAX (sincronico) y framework 2 (C# .net)

Publicado por christian (2 intervenciones) el 19/03/2012 03:23:15
No hay solucion???
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar