Ik maak gebruik van een Query while waar ik alle spelers ophaal.
Hierin zet ik voor elke speler apart de volgende drag :
En die roep ik bij elke dan weer op :PHP Code:
<script>
$(function() {
$( "#draggable<?=$object->id?>" ).draggable();
});
</script>
Wat goed gaat.PHP Code:
<td><div id='draggable<?=$object->id?>'><?=$object->naam?></div></td>
Maar nu wil ik ook zorgen dat hij deze update als ik hem weer terug sleep of ergens anders naar toe sleep.
Hiervoor gebruik ik :
Maar de fout is nu dat hij bij deze laatste function altijd de laatste speler pakt.PHP Code:
<script>
$(function() {
$( "#droppable-bank" ).droppable({
drop: function( event, ui ) {
$( this )
.find( "p" )
.html( "Speler : <?=$object->naam?> is op de bank gezet." );
}
});
});
</script>
Ik moet dus controleren, welke speler ik sleep en die dan updaten als ik die naar de <div id="droppable-bank"> zet.
Nu komt er altijd de tekst van de laatste speler uit de while.
Mijn vraag is dus hoe kan ik door middel van een if() ( denkik ) controleren dat ik die speler sleep en dan die update.
Thx alvast
Met vriendelijke groet,
Martijn van Beek
- Jquery, Hoe controleren op if()
-
16-05-2011, 12:55 #1
- Berichten
- 151
- Lid sinds
- 17 Jaar
Jquery, Hoe controleren op if()
-
-
16-05-2011, 15:12 #2
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Jquery, Hoe controleren op if()
Waarom gebruik je geen class 'dragable' en gebruik je gewoon $('.dragable').dragable() ? Dan kun kun je met 1 functie alles doen. Via $(this) kun je dan attr('id') oproepen wat je het ID terugstuurt (je kunt dragable als prefix dan weg laten vallen).
-
16-05-2011, 16:12 #3
- Berichten
- 151
- Lid sinds
- 17 Jaar
Re: Jquery, Hoe controleren op if()
ik gebruik $( "#draggable<?=$object->id?>" ).draggable(); omdat ik dan elke speler apart kan slepen.
en als ik de class gebruik dan kan ik 1 speler slepen, de rest niet.
-
16-05-2011, 16:25 #4
Elephant Media GbR
- Berichten
- 1.253
- Lid sinds
- 18 Jaar
Re: Jquery, Hoe controleren op if()
Php door je jQuery gebruiken is wel beetje "Dirty code".
Haal elke speler uit de database, geef deze een id mee. bijvoorbeeld:
PHP Code:<div class="speler" id="45"></div>
PHP Code:$( ".speler" ).draggable({
stop: function(event, ui) {
spelerID = $(this).attr('id');
alert("SpelerID "+ spelerID +" is verplaatst");
// controleer op de cordinaten van de bank
// en voer een ajax script uit.
}
});
-
16-05-2011, 16:57 #5
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Jquery, Hoe controleren op if()
Dat is dus wat ik bedoelde ;-)
-
16-05-2011, 18:24 #6
- Berichten
- 151
- Lid sinds
- 17 Jaar
Re: Jquery, Hoe controleren op if()
aah zo.
Dat werkt inderdaad.
Maar dan heb ik nog een vraag over.
Want nu verplaats ik hem, maar ik wil de spelers naar bepaalde vakken slepen. Soms meerdere in die ene vak.
<script>
$(function() {
$( "#droppable-bank" ).droppable({
drop: function( event, ui ) {
spelerID = $('.speler').attr('id');
alert("SpelerID "+ spelerID +" is op de bank geplaatst");
}
});
});
</script>
Alleen haalt hij de ID niet goed op. Ik krijg namelijk alleen het eerste resultaat uit de while telkens te zien.
Hopelijk kunnen jullie me bij deze laatste ook nog helpen.
EDIT :
In plaats van
spelerID = $('.speler').attr('id');
Moet
spelerID = $(ui.draggable).attr('id');
Bedankt iedereen voor de hulp en snelle antwoorden!Laatst aangepast door Martijn beek : 16-05-2011 om 18:32
-
16-05-2011, 23:18 #7
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Jquery, Hoe controleren op if()
Nu je het zegt, was me nog niet opgevallen, zo haal je inderdaad het ID op van de huidige selectie.
-
17-05-2011, 11:03 #8
- Berichten
- 151
- Lid sinds
- 17 Jaar
Re: Jquery, Hoe controleren op if()
Ach zo leren we allemaal wat. Ik weet nu in iedergeval dat je met .attr ook bijvoorbeeld name=bla kan ophalen enzo.
Het enige waar ik nu nog moet zien achter te komen is dat als ik al iemand op een <div> heb gezet dat ik niet nog een speler erop kan zetten.
-
18-05-2011, 06:57 #9
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Jquery, Hoe controleren op if()
Je kunt met $('#div-id').html(); de inhoud krijgen, als dit: ($('#div-id').html() != "") true geeft, dan staat er een speler in (ervan uitgaande dat je iets van HTML in dat vak zet.
-
18-05-2011, 11:49 #10
- Berichten
- 151
- Lid sinds
- 17 Jaar
Re: Jquery, Hoe controleren op if()
Er staat een afbeelding en naam in.
Stel dat de gebruiker al een speler er ooit had opgezet, dan haal ik dat op via de database en zet ik die speler al vast op die plaats.
Stel dat hij deze wil veranderen. Dat kan, maar ik zou dan graag willen dat hij op deze speler niet nog een speler kan plaatsen.
if($( "#droppable-keeper" ).html() != ""){
alert("Er staat al iemand");
}
Er van uitgaan dat:
if( $query ) == 0 ) {
<p>sleep speler hier naartoe</p>
}else{
Speler gegevens weergeven welke er nu staat met de class='speler' draggable
}
-
18-05-2011, 13:54 #11
- Berichten
- 1.899
- Lid sinds
- 18 Jaar
Re: Jquery, Hoe controleren op if()
een ID van de speler invullen in een hidden veld op die plek. Die een class geven ('spelerid') bijvoorbeeld en dan
$(#div-id .spelerid');
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic