I have not been able to get this to work the way you describe. What I  
had to do was set up my "factory" elements as Draggable (with revert)  
and then set a separate Droppable container around my sortable. When I  
drop, the onDrop function fires, which does the Ajax call to create a  
new element, then that element is appended to the end of the sortable  
and the sortable is re-initialized so that it recognizes the new member.

I understand what you want to do, but I wasn't able to make it work  
precisely the way you describe it here.

One thing for you to think over as you work on this is to do less. For  

>        $result = $this->mMysqli->query('INSERT INTO tasks SELECT *
> FROM channels WHERE id="' .
>                                        $content . '"');
>        $updatedList = $this->BuildPlaylist();
>        return $updatedList;

I can't see what's going on in here, but if you are returning (and re- 
populating) the entire list, maybe you can simply return the one new  
list element (with its newly generated ID) and insert that into your  
Sortable where you are dropping (which is the part I couldn't figure  
out myself, hence my punt). You do know the new ID after your insert  
-- just get the value from your $result:

$row = mysql_fetch_object($result);
$id = $row->id;

Build up your element as HTML, and insert it into the outer list with  

then just re-run Sortable.create with the same arguments as previous,  
and it will tear down the old Sortable (in memory) and replace it with  
a new one that "knows" what order these things are currently in.


On May 28, 2009, at 7:13 AM, WLQ wrote:

> After it clones a row from one table to another, the list updates. But
> I want not only to clone an item, but also give it a corret Id, so
> it's not somewhere inside of a sortable but exactly where you've
> dropped it.

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptaculous@googlegroups.com
To unsubscribe from this group, send email to 
For more options, visit this group at 

Reply via email to