Foros del Web » Programando para Internet » Jquery »

Fallan los botones en Jquery.UI dialog()

Estas en el tema de Fallan los botones en Jquery.UI dialog() en el foro de Jquery en Foros del Web. Estoy implementando dos llamadas a Jquery UI. Esto en otra pagina no me dio problema y tengo multiples llamadas funcionando, que incluso se encadenan y ...
  #1 (permalink)  
Antiguo 04/11/2009, 14:26
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Fallan los botones en Jquery.UI dialog()

Estoy implementando dos llamadas a Jquery UI. Esto en otra pagina no me dio problema y tengo multiples llamadas funcionando, que incluso se encadenan y navego por ventanitas de opciones un buen rato.

Lo que me esta dando problemas son los botones de "si" y "no". Si yo aprieto "eliminar foto" quiero que aparezca "si y no" como opciones, y eso esta logrado. Pero si antes de apretar "eliminar" aprieto "guardar" entonces ya el boton "eliminar" no tiene las opciones si / no, y en cambio es el boton "guardar" el que las tiene! Muy raro.


Estos son:

Guardar:
Cita:
$("#dialog").html(descripcion).dialog({ resizable: false,
draggable: true,
closeOnEscape: true,
autoOpen: false,
position: 'center',
title:'Edicion'}).dialog('open');
Eliminar:
Cita:
$("#dialog").html(" Estas seguro de borrar la foto? \n").dialog({ resizable: false,
draggable: true,
closeOnEscape: true,
autoOpen: false,
position: 'center',
title:'Eliminar',
buttons: {
"Si" : function() {
borrar();
$(this).dialog("close");
},
"No" : function() {
$(this).dialog("close");
}}
}).dialog('open');
  #2 (permalink)  
Antiguo 04/11/2009, 14:59
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

No hay caso. Probe imprimir mis propios botones, y ahora no se mezclan las ventanitas, pero tampoco logro resultados:

Cita:
$("#dialog").html(" Estas seguro de borrar la foto?<br /><input type='button' class='azul' value='Si' onclick='borrar(); nada();' /><input type='button' class='azul' value='No' onclick='nada(); ' />").dialog({ resizable: false,
draggable: true,
closeOnEscape: true,
autoOpen: false,
position: 'center',
title:'Eliminar',

}).dialog('open');



function nada() {
alert("anda");
$("#dialog").dialog('destroy'); }


function borrar() { etc etc etc }{
No funcionan las llamadas a funcion desde dentro del boton.
  #3 (permalink)  
Antiguo 04/11/2009, 18:37
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

Funciono poner dos recipientes por separados, en vez de actualizar el mismo:

Cita:
<div id='dialog' title='Inicio de sesion'></div>
<div id='eliminar' title='Eliminar'></div>
Luego, usar buttons que provee UI .dialog
  #4 (permalink)  
Antiguo 12/02/2010, 05:01
 
Fecha de Ingreso: febrero-2010
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Pregunta Respuesta: Fallan los botones en Jquery.UI dialog()

Hola amigos, ¿Qué tal?
Yo tengo dos botones Bien y Mal y quiero que pulsando uno de ellos el otro desaparezca.

Este es el código que tengo y asi como lo tengo,me borra el boton que pulso y no consigo que me salga al reves:
Código:
$("a.boton_bien").live("click",function()
	{
               $tabla=$(this).parent().find('fidescu_table2');
               if(!$tabla.hasClass('hide'))
               {
               $(this).html('bien')
                $(this).hide();
                $id_examen=$(this).parent().prev().prev().prev().text();
		$.post('post.request.handler.php',{tipo_mensajeria:'10',id_examen:$id_examen});
                }
               
                 $tabla.toggleClass('hide');
				                
	});
$("a.boton_mal").live("click",function()
	{
        $tabla=$(this).parent().find('fidescu_table2');
        if(!$tabla.hasClass('hide'))
        {
         $(this).html('Mal')
                $(this).hide();
          
         
                $id_examen=$(this).parent().prev().prev().prev().text();
		$.post('post.request.handler.php',{tipo_mensajeria:'10',id_examen:$id_examen});
     } 
                 
          $tabla.toggleClass('hide');            
                
	});
Si me pudierais aconsejar os lo agradeceria.
Un saludo
  #5 (permalink)  
Antiguo 12/02/2010, 07:44
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

No lo tengo muy claro. Pero... comentaria aparte :) Me parece que falta un punto y coma luego de:
$(this).html('Mal')

y de
$(this).html('bien')
  #6 (permalink)  
Antiguo 15/02/2010, 03:49
 
Fecha de Ingreso: febrero-2010
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Sonrisa Respuesta: Fallan los botones en Jquery.UI dialog()

Ya he visto lo de los ; pero lo que deseo hacer es que al pulsar el boton bien, desaparezca el boton mal y viceversa y ahora si pulso el boton bien desaparece el boton bien y si pulso el boton mal desaparece el boton mal y asi no queda bien, queda bien de la otra forma.
  #7 (permalink)  
Antiguo 15/02/2010, 09:03
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

A mi me pasaba algo igual o muy similar. Asegurate de que no estas compartiendo el mismo div con otro .dialog() Lee un poco mas arriba que hablo de eso.
  #8 (permalink)  
Antiguo 15/02/2010, 09:44
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 17 años
Puntos: 25
Pregunta Respuesta: Fallan los botones en Jquery.UI dialog()

mmmm, tal vez mi comentario no sea de ayuda, pero te recomiendo usar un confirm de javascript, es mas sencillo, rapido, "ligero", que añadir mas cositas a tu aplicación...

antes solia usar cositas como esas, para un gestor de contenido, pero finalmente conclui que lo mejor es usar lo básico...

Código PHP:
var respuesta=confirm('¿Desea eliminar?');
if (
respuesta){
  
/*procedimientos para eliminar*/

__________________
blog: hector2c.wordpress.com
email: [email protected]
  #9 (permalink)  
Antiguo 16/02/2010, 04:25
 
Fecha de Ingreso: febrero-2010
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Fallan los botones en Jquery.UI dialog()

Yo lo tengo dentro de una tabla y aparecen los botones bien y mal en cada línea de la tabla para despues recalcular el examen:

Cita:
<table class="fidescu_table2">
<tr><th>Mod</br>Examen</th><th>Id<br>Pregunta</th><th>Redaccion<br/>Examen</th><th>Fecha</th><th>Correción</th></tr>

<?php foreach($redacciones as $redaccion)
{
$valor=html_entity_decode(utf8_decode($redaccion[3]));
$desc_nivel=trim($redaccion[1]);
$valor=wordwrap($valor,40,'</br>');

if(strlen($valor)>40 and substr_count($valor," ")==0 )
{
$valor=chunk_split($valor,40,"<br/>");
}
printf(trim("<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td><a href='javascript:void(0)' class='boton_bien' examen_id='%s' >Bien</a><a href='javascript:void(0)' class='boton_mal' examen_id='%s' >Mal</a></td></tr>"),$redaccion[0],$desc_nivel,$valor,$redaccion[2],$redaccion[2],$redaccion[0]);

}
?>
<a href='javascript:void(0)' class='boton_recalcular' examen_id='%s'>Recalcular examen</a>
</table>
Y asi como lo tengo programado cada boton:
Cita:
$("a.boton_bien").bind("click",function()
{
$tabla=$(this).parent().find('fidescu_table2');

if(!$tabla.hasClass('boton_bien'))
{
$(this).html('a.boton_mal').hide();
}
$tabla.toggleClass('hide');
});
$("a.boton_mal").bind("click",function()
{
$tabla=$(this).parent().find('fidescu_table2');

if(!$tabla.hasClass('boton_mal'))
{
$(this).html('a.boton_bien').hide();
}
$tabla.toggleClass('hide');
});
Pero me sigue pasando lo mismo me borra el boton que pulso y lo que quiero que me salga es que desaparezca el botón contrario, Si Pulsas Bien, se quede Bien y desaparezca mal y viceversa. Un saludo
  #10 (permalink)  
Antiguo 16/02/2010, 05:07
 
Fecha de Ingreso: febrero-2010
Mensajes: 13
Antigüedad: 14 años, 10 meses
Puntos: 0
Sonrisa Respuesta: Fallan los botones en Jquery.UI dialog()

Ya he conseguido que se elimine el botón mal o el bien como queria, el problema ahora es que me quita todos los botones de la tabla y solo quiero que sea de esa misma linea de la tabla.

Cita:
if(!$tabla.hasClass('boton_bien'))
{
$(this).html($('a.boton_mal').hide());
$(this).html('Bien').show();
}

if(!$tabla.hasClass('boton_mal'))
{
$(this).html($('a.boton_bien').hide());
$(this).html('Mal').show();
}
¿Sabeis como referenciarlo para una linea de la tabla? Muchisimas gracias
  #11 (permalink)  
Antiguo 16/02/2010, 09:19
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

Por lo que veo , estas seleccionando la tabla y no la linea:

$tabla

Podes probar asi:

$tabla.children("tr")

Quiero decir, es un problema de selectores (o de jerarquia si queres llamarle así). Buscale la vuelta.
  #12 (permalink)  
Antiguo 25/02/2010, 04:02
 
Fecha de Ingreso: febrero-2010
Mensajes: 2
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Fallan los botones en Jquery.UI dialog()

Hola a tod@s:

Tengo un problema que no estoy siendo capaz de resolver con los botones.

Lo que quiero es que cuando abra la nueva ventana de formulario, el botón
que tengo de guardar llama a una función ajax para realizar la validación y el
envio, pero después de ésto quiero que se cierre el dialgo y me vuelva a la Ç
página donde lo cargué.

El botón cancelar lo que debería hacer es cerrar la ventana y volver la página
que llamó al dialog.


La página desde la que llamo tiene ésto:


<script type="text/javascript">
$(function(){

$('#dialog_link').click(function(){
$('#dialog').dialog('open');
$.get('myDiv.php', function(data) {
$('#dialog').html(data);
});
return false;
});

// Dialog
$('#dialog').dialog({
modal:true,
autoOpen: false,
width: 600,
position: 'center',
/*buttons: {
"Ok": function() {
$(this).dialog("close");
},
"Cancel": function() {
$(this).dialog("close");

}
},*/

open: function() {
$('#dialog').parent().appendTo($('#form1'));

}

});


// Dialog Link



//Validar form
$("#form1").validate({
rules: {
'data[Contact][name]': "required",
'data[Contact][recipient]': { required: true, email: true },
'data[Contact][message]': "required"
},
messages: {
'data[Contact][name]': "Por favor ingrese su nombre",
'data[Contact][recipient]': "Ingrese una dirección de e-mail válida",
'data[Contact][message]': "Por favor, ingrese su mensaje o consulta"
},

debug: true,
errorElement: "label",
errorContainer: $("#errores"),
submitHandler: function(form){

$.ajax({

type: "GET",
url:"envio.php",
contentType: "application/x-www-form-urlencoded",
processData: false,
data: "nombre="+$('#ContactName').val()+"&email="+$('#Co ntactRecipient').val()+"&telefono="+$('#ContactPho ne').val()+"&comentario="+$('#ContactMessage').val (),
success: function(msg){
//if(msg==1){
$("#mensaje").html("<strong>El mensaje se ha enviado correctamente!</strong>");
$('#form1').dialog('close');
//}
}

});
}
});

});
</script>

<body>
<p><a href="#" id="dialog_link" class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-newwin"></span>Open Dialog</a></p>

<!-- botón de llamada -->

<!-- Aquí cargo la parte del formulario que está en la página myDiv.php, dentro
del div "dialog" -->
<form id="form1" runat="server">

<div id="dialog" title="Dialog Title">


</div>

</form>


La página del dialog es la siguiente myDiv.php
<body>
<fieldset style="display:none;">
<input type="hidden" name="_method" value="POST" /></fieldset>
<label for="ContactName">NOMBRE</label>
<input name="data[Contact][name]" type="text" class="textField"
maxlength="255" value="" id="ContactName" />
<label for="ContactRecipient">CORREO ELECTRÓNICO</label>
<input name="data[Contact][recipient]" type="text" class="textField "
value="" id="ContactRecipient" />

<label for="ContactPhone">TELÉFONO</label>
<input name="data[Contact][phone]" type="text" class="textField"
maxlength="255" value="" id="ContactPhone" />
<label for="ContactMessage">MENSAJE / CONSULTA</label>
<textarea name="data[Contact][message]" cols="5" rows="3"
class="textArea" id="ContactMessage" ></textarea>


<p style='margin:10px 0 0 80px' id="mensaje"></p>
<div class="ui-dialog-buttonpane ui-widget-content ui-helper-clearfix">
<input type="submit" alt="Guardar" class="ui-state-default ui-corner-all"
value="Guardar">

<input type="submit" alt="Cancelar" class="ui-state-default ui-corner-all"
value="Cancelar">
</div>
</body>

Pues lo dicho cuando pincho en Guardar, me valida,envia pero no cierra la ventana y vuelvo a la inicial y lo mismo con el cancelar.

Alguién podría echarme una mano, please?

Muchas gracias
  #13 (permalink)  
Antiguo 25/02/2010, 09:35
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

Esto me parece extraño:

Cita:
$('#form1').dialog('close');
Cita:
<form id="form1" runat="server">

<div id="dialog" title="Dialog Title">


</div>

</form>
Pero en fin... creo que la solución es tener varios divs para los varios dialogs que necesites. Si tenes un "cancelar" y un "guardar", no los apuntes al mismo div. COmprendes? De esto ya hablamos más arriba. Probalo.
  #14 (permalink)  
Antiguo 31/07/2010, 13:12
 
Fecha de Ingreso: noviembre-2005
Mensajes: 9
Antigüedad: 19 años, 1 mes
Puntos: 0
Respuesta: Fallan los botones en Jquery.UI dialog()

alguen sabe como sacarle el formato de boton a <button id="create-user">Crear usuario</button> ???


por que le puse a un texto <a id="create-user" y me muestra el formato de boton todavia...
  #15 (permalink)  
Antiguo 05/08/2010, 07:56
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 8 meses
Puntos: 101
Respuesta: Fallan los botones en Jquery.UI dialog()

Al boton de se le pueden sacar el fondo y el borde. Además si le pones una definicion :hover con CSS va a quedar tal cual un link. Al menos eso funciona con los <input type="button" />

Por favor abrí un nuevo tema para plantear preguntas como esta, que no están enteramente relacionadas con posts como el que reavivaste. Además, esto es tema de html/css y no de jquery.
  #16 (permalink)  
Antiguo 05/03/2012, 02:27
 
Fecha de Ingreso: febrero-2009
Ubicación: mexico
Mensajes: 148
Antigüedad: 15 años, 10 meses
Puntos: 1
Sonrisa Respuesta: Fallan los botones en Jquery.UI dialog()

yo utilizo los botones asi, no se si entendi bien tu pregunta pero es muy facil utilizar multiples opciones con botones con jquery ui

Código HTML:
<javascript>
$("#acciones").dialog({
        autoOpen: false,
        resizable: false,
        show: "slide",
        hide: "slide",
        height: "400",
        width: "300",
        modal:true,
        title: "BOTONES",
        buttons:{
            "SI":function(){
//aqui pon tu codigo
            },
           "NO":function(){
//aqui pon tu codigo
            },
            "Cerrar":function(){
                $(this).dialog("close");
            }
        }
    });
    $(".acciones").click(function() {
        $("#acciones").dialog("open");
            return false;
    });
</javascript> 
  #17 (permalink)  
Antiguo 27/07/2012, 16:51
Avatar de EUSKARA  
Fecha de Ingreso: marzo-2010
Mensajes: 76
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Fallan los botones en Jquery.UI dialog()

Cita:
Iniciado por negro1985 Ver Mensaje
yo utilizo los botones asi, no se si entendi bien tu pregunta pero es muy facil utilizar multiples opciones con botones con jquery ui

Código HTML:
<javascript>
$("#acciones").dialog({
        autoOpen: false,
        resizable: false,
        show: "slide",
        hide: "slide",
        height: "400",
        width: "300",
        modal:true,
        title: "BOTONES",
        buttons:{
            "SI":function(){
//aqui pon tu codigo
            },
           "NO":function(){
//aqui pon tu codigo
            },
            "Cerrar":function(){
                $(this).dialog("close");
            }
        }
    });
    $(".acciones").click(function() {
        $("#acciones").dialog("open");
            return false;
    });
</javascript> 
Yo tengo el mismo esquema pero mi pregunta es como dar el estilo con CSS ¿?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:13.