jquery - finde alle id med bestemt value og gemme variabler udfra andre id...

Tags:    jquery javascript id div

Hej jeg har en stump kode der ser sådan her ud:

Html:
Fold kodeboks ind/udHTML kode 



PLANEN er den skal være dynamisk så den automatisk henter alle mine varianter.

Jquery koden indtil nu ser sådan her ud:
Fold kodeboks ind/udJScript kode 



Det jeg vil have er den finder alle der indeholder gem, også skal den når den har funder dem, lave et tjek om VARIANT_minimums_beholdning er større eller mindre end VARIANT_aktuel_beholdning - hvis den er så gør dit hvis ikke gør dat.

Med ovenstående jquery kode laver den en alert box med begge IDer som indeholder gem, og skriver al deres indhold, men kan ikke dreje hvordan jeg kun få det relevante som jeg er interesseret i.

Det hele skal være "dynamisk" så jeg kan udvide det med fx banan_gem osv.


Håber det giver mening



Indlæg senest redigeret d. 23.07.2014 12:46 af Bruger #1568
10 svar postet i denne tråd vises herunder
5 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Du bliver nødt til at tænke det anderledes. Værdien af id="" skal være fuldkommen unik, på den enkelte side!

Og så kan du påstemple en CSS-class f.eks. "value" på de <td> du vil have værdien af. Herefter kan du bruge jQuery til at hente værdien.

Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 22.07.2014 14:19 af Bruger #10216
noget ala dette du søger
Fold kodeboks ind/udKode 







Michael: Den får jo unikke id'er? eller misforstår jeg dig?

hvis vi kigger på ln 16 og 19, i din code
<td id="variant_vanilje">Vanilje</td>
<td id="variant_vanilje">Chokolade</td>
ser disse id'er temmelig ens ud :(, og det gentager sig i resten af tabellen
copy paste er en god ting, men man skal huske at rette det der skal ændres,


du ikke overveje at dele dine klasser op i flere
feks variant_vanilje bliver til klassen variant og vanilje
så kan du teste på klassen variant

og en lille rettelse der var lige smuttet et parseInt
stringen "1234" er mindre en stringen "2"
men int 1234 er størrer en int 2

hurtig tilrettet code
Fold kodeboks ind/udKode 



hvordan ser din php og db del ud ??




spørgsmålet er vist dødt på eksperten.dk
http://www.eksperten.dk/spm/996324
så luk det snarest, inden nogle bruger tid på det



$('*[id*=gem]:visible').each(function() {
burde vel se sådan ud
$('[id$=gem]').each(function() {
ref http://api.jquery.com/attribute-ends-with-selector/

eller $('[id*=gem]').each(function() {
ref http://www.w3schools.com/jquery/jquery_ref_selectors.asp

der selvføgelig default er visible

men overordet rigtigt forstået


lidt farvelade på værdi/linje der er kritisk

CSS
Fold kodeboks ind/udKode 


erstat nuværende javascript med

vertion 0 fremhæver hele linjen
Fold kodeboks ind/udKode 


eller vertion 1 fremhæver kun værdien
Fold kodeboks ind/udKode 


og så burde man nok omskrive if sætningen, hvis du kun anvender den ene del

omkring blink læs
https://developer.mozilla.org/en-US/docs/Web/CSS/text-decoration
mulig løsning
http://stackoverflow.com/questions/16344354/how-to-make-blinking-flashing-text-with-css3
http://www.css3files.com/animation/#ani3
http://css-tricks.com/forums/topic/changing-text-color-with-blink/



Findes der som i fx. visual studio når man laver c# console compiler hvor man trin for trin kan se hvad der sker?


ikke direkte hvad jeg ved af men du kommer langt med firebug

debuging tool
udover console.log bruger jeg
https://addons.mozilla.org/en-us/firefox/addon/html-validator
https://addons.mozilla.org/en-us/firefox/addon/firebug <-- kommer du langt med
( bruger jeg ikke så tit
http://firequery.binaryage.com/
https://addons.mozilla.org/en-us/firefox/addon/web-developer
https://addons.mozilla.org/en-us/firefox/addon/tamper-data
https://addons.mozilla.org/en-us/firefox/addon/yslow
)

men prøv at google
https://www.google.dk/search?q=firefox+web+developer+tools
https://www.google.dk/search?q=chrome+web+developer+tools
eller hvilke browser du anvender




Indlæg senest redigeret d. 23.07.2014 19:52 af Bruger #16075
Chrome developer tools virker udemærket som debugging værktøj for mig



Det kunne også laves bedre, hvis du har javascript til at generere hele tabellen eller ihvertfald indholdet. Så har du bedre styr på dine værdier og skal ikke skubbe frem og tilbage med indhold i Javascript.



Michael: Den får jo unikke id'er? eller misforstår jeg dig?


Ronny: Det er stortset det jeg ønskede - MEN det jeg gerne vil er at jeg med php vil hente noget data fra min mysql db. som så loades til noget html
fx:

Fold kodeboks ind/udHTML kode 


også en mere med noget andet osv. Det eneste der er fast hvergang er:

_gem
variant_
_minimumsbeholdning
_aktuel_beholdning

Så det skulle helst være dynamisk.




Dan: Der er helt sikkert mange andre smartes måder, men mine evner med javascript er 3 dage gamle :P så må lave det som jeg tror jeg kan.







Det som det hele gerne skulle ende op med er at jeg henter en masse data fra min mysql vha. PHP. Når det loaded skal der tjekkes om det der er nogle som er under minimum, er der skal der indsættes en ny css som gør det "blinker" som en advarsel? Hvis i kan følge hvor jeg skal hen.



Er det ikke nemmere at lave det sådan det bliver lavet af PHP. AJAX er måske ikke den nemmeste ting at gå igang med hvis man kun lige har haft 3 dage med Javascript.



Dan: Kunne du måske have ret i. Men det bedste måde (hvis du spørger mig) det ved at prøve og lege med det, og det projekt her var et åbenlyst sted at starte.


Ronny: Det var lige præcis sådan noget her jeg var ude i der var interessant ;)

PT. Er der ingen db eller php del endnu. Jeg er ved at stille tingene op så det visuelt ser ud som jeg ønsker det, også dernæst skal jeg lave php del.



Nu jeg har din opmærksomhed, kan du så forklare mig hvordan det her Jquery virker. Tænker,
$('*[id*=gem]:visible').each(function() {

var minimums_beholdning = parseInt($(this).find(".minimums_beholdning").html());
var aktuel_beholdning = parseInt($(this).find(".aktuel_beholdning").html());


De her specielt.
Som jeg har kunne læse mig til, så gør den følgende:

1. Finder alle id'er som indeholder gem.
2. Laver en variabel med html indholdet fra det id ovenfor hvor classen minimums_beholdning er?

og if sætningen er lige ud af landevejen.

Er det korrekt forstået?



Findes der som i fx. visual studio når man laver c# console compiler hvor man trin for trin kan se hvad der sker?



Har faktisk fået lavet blink allerede - dog drillede det mig længe at få baggrunden table til at skifte til det slog mig jeg har en bootstrap css i toppen :)


Jeg siger tusind tak for hjælpen. :D


"lukker" man et spørgsmål her eller hvordan? Har lukket det på eksperten.



t