Ver Mensaje Individual
  #3 (permalink)  
Antiguo 22/07/2010, 18:31
sargoman
 
Fecha de Ingreso: julio-2010
Mensajes: 8
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: ayuda con confirm

Bueno, encontré la solución y encuentro que es correcto entregarla para ver si a alguien mas le sirve.

primero en el aspx creamos dos funciones javascrip de la siguiente manera

<script type="text/javascript">
function __Submitear(eventTarget, eventArgument) {
var theform;
if (window.navigator.appName.toLowerCase().indexOf("m icrosoft") > -1) {
theform = document.Form1;
if (theform == null) { theform = document.form1 };
}
else {
theform = document.forms["Form1"];
if (theform == null) { document.forms["form1"] };
}
theform.__EVENTO.value = eventTarget.split("$").join(":");
theform.__ARGUMENTO.value = eventArgument;
theform.submit();
}
function PreguntaOtraInscripcion(Obj) {

if (confirm(Obj) == true) {
__Submitear("PreguntaOtraInscripcion");
}
}
</script>

y en el cuerpo agregamos lo siguiente

<body>
<input type="hidden" name="__EVENTO">
<input type="hidden" name="__ARGUMENTO">
</body>

luego en c# hacemos algo como esto en el lugar que queremos que se nos corte el codigo q estamos ejecutando

public void ModificarSolicitud(string SaltoPrograma)
{
if (SaltoPrograma == "SALTO_OTRA_INSCRIPCION")
goto SALTO_OTRA_INSCRIPCION;
if (cantidadCupos > TotalInscritos)
{

}
else
{
cupoCambio = cantidadCupos;
ViewState["cupoCambio"] = cupoCambio;
InscritoCambio = TotalInscritos;
ViewState["InscritoCambio"] = InscritoCambio;

string detalle = "";
Page.ClientScript.RegisterStartupScript(this.GetTy pe(), "ALGO", "javascript:PreguntaOtraInscripcion('No hay cupos suficiente, decea inscribir otra asignatura?, \\r " + detalle + " ¿Continúa? ');", true);
return;

}

SALTO_OTRA_INSCRIPCION:
Response.Redirect("Cons_OtroRamoSeccCarrRamo.aspx" );
}

Las variables fueron declaradas y obtenidas anteriormente, por si alguien se pregunta de donde salieron. Lo de color rojo es lo importante de lo anterior

y en el evento load del c# agregamos algo como lo siguiente

switch (Request.Form.Get("__EVENTO"))
{
case "PreguntaOtraInscripcion":
{
ModificarSolicitud((co_mt_alumno)ViewState["co_mt_solictramo"], "SALTO_OTRA_INSCRIPCION");
}
break;
}

Ahora les explico.

Cuando entra por primera ves al ModificaSolicitud, llega hasta el punto donde queremos enviar el mensaje, este llama a un javascript y este recarga la pantalla enviandole el parametro correspondiente que preguntara en el switch cual es que viene y redireccionara nuevamente en este caso al metodo donde estabamos pero como viene la variable que le seteamos antes, en el primer if nos mandara al goto que nos enviara a la parte que se debe ejecutar si la persona puso aceptar en el confir.

Espero lo entiendan, es un poco largo o tedioso de entender al principo pero funciona filete

Cualquier duda aqui las espero