2009-05-24 6 views
1

Avec l'aide de la communauté stackoverflow, j'ai le glisser pour fonctionner parfaitement en utilisant JQuery. Maintenant, j'ai assigné une classe de .drop (et l'ai faite .droppable), mais chaque fois que je dépose un .draggable sur le .droppable ... rien ne se produit! Y at-il une erreur dans javascript?.droppable ne semble pas déclencher quelque chose? JQuery + ASP

<script type="text/javascript"> 
    $(document).ready(function() { 
doReady(); 

var prm = Sys.WebForms.PageRequestManager.getInstance(); 
prm.add_endRequest(function(s, e) { 
    doReady(); 
}); 
}); 

function doReady() { 
$('.drag').draggable({ revert: true,helper: 'clone' });} 
$('.drop').droppable({ 
tolerance: touch, 
drop: function() { alert('dropped'); } 
}); 
</script> 

La partie supérieure du script permet de la glisser & la bonté Drop de continuer à travailler après une publication partielle.

Répondre

3

ici devrait être une chaîne

tolerance: "touch", 

formater votre code

$(document).ready(function() { 

    doReady(); 

    var prm = Sys.WebForms.PageRequestManager.getInstance(); 
    prm.add_endRequest(function(s, e) { 
     doReady(); 
    }); 

    }); // End of document ready 

    function doReady() { 

    $('.drag').draggable({ revert: true,helper: 'clone' }); 

    } // End of do ready 

    $('.drop').droppable({ 
    tolerance: "touch", // Here should be a string 
    drop: function() { alert('dropped'); } 
    }); 

Pouvez-vous voir $ ('drop') ne sont pas en fonction doReady.

Fixé.

function doReady() { 

    $('.drag').draggable({ revert: true,helper: 'clone' }); 
    $('.drop').droppable({ 
     tolerance: "touch", // Here should be a string 
     drop: function() { alert('dropped'); } 
    }); 

} // End of do ready 
+0

Je l'ai mis à jour, et il semble être le statu quo? Chaque fois que je dépose quelque chose sur l'étiquette marquée .drop, il ne déclenchera jamais la fonction d'alerte pour me faire savoir qu'il a enregistré une baisse. –

+0

J'ai mis à jour ma réponse –

+0

C'était tout! Parfait! La prochaine fois, je serai plus attentif à l'endroit où se situent les étiquettes d'ouverture et de fermeture et au nombre d'étiquettes. J'apprécie vraiment votre aide!!! –

0

Avez-vous manqué le} à la fin de votre fonction doReady()?

+0

Je ne pense pas que je l'ai fait? J'ai compté le nombre de {ouverture et fermeture} - et ils semblent correspondre. En ce qui concerne le reste des déclarations d'ouverture et de clôture, je pense que je me suis complètement perdu de modifier un tas d'extraits de code existants. Le concept d'ouverture et de fermeture des tags est un peu nouveau pour moi, car je n'ai jamais eu à utiliser le; dans VB.net: D –

+0

Ah, oui je vois que tu as glissé un '}' à la fin de la ligne $ ('. drag') .... Ce qui signifie que la ligne $ ('. Drop') ... n'est pas dans doReady(). –

Questions connexes