2011-02-26 19 views
5

Me gustaría poder arrastrar una imagen a uno de los dos contenedores (contenedor 1 y contenedor 2). A partir de ahí, dependiendo de en qué contenedor se colocó la imagen, me gustaría actualizar ese contenedor con una llamada a la base de datos (o simplemente actualizar una fila en una de mis tablas).¿Cómo puedo colocar una imagen en un contenedor y luego actualizar el contenedor según lo que se le cayó?

Me gustaría utilizar http://jqueryui.com/demos/droppable/ para lograr esto, pero no estoy seguro de cómo procesar la solicitud, y cómo hacer que cada contenedor escuche a un controlador de eventos (caída de la imagen).

He dibujado una muy mala siguiente diagrama para explicar lo que quiero decir:

Diagram of Droppable System

+2

+1, _excellent_ diagrama! –

+1

's/diagrama realmente malo/diagrama impresionante '/ –

Respuesta

5

El droppable demo muestra exactamente cómo hacer este tipo de cosas.

$(function() { 
    $("#draggable").draggable(); 
    $("#droppable").droppable({ 
     drop: function(event, ui) { 
      $(this) 
       .addClass("ui-state-highlight") 
       .find("p") 
        .html("Dropped!"); 
     } 
    }); 
}); 

My own really basic demo → (actualizan)

+0

Esto es tan increíble. ¡Gracias! ¿Sería la mejor manera de almacenar múltiples votos mediante el uso de una cookie o debería simplemente tomar la ip y compararla con la última_tabla votada en una fila adicional en mi db? –

+0

@bob_cobb: No estoy muy seguro de lo que quiere decir con "votos múltiples". ¿Se le permite a cada usuario votar una vez por foto? Hacer cumplir la votación anónima es difícil, porque las direcciones IP pueden cambiar, y las cookies se pueden (muy fácilmente) eliminar. Por lo general, esto se resuelve con un sistema de cuentas de usuario, donde los votos están asociados con una cuenta, en lugar de una dirección IP o (realmente, simplemente no usar) las cookies. –

Cuestiones relacionadas