Avatar billede jacksleo Nybegynder
01. marts 2003 - 23:36 Der er 19 kommentarer og
1 løsning

if sætning med visible

Loader en text til en knap via en database og et php script og vil gerne have at knappen er skjult hvis der ikke er nogen data til den. Har stiret mig blind på scriptet såååå....

Knappen loader fint med data og det hele men den er ikke skjult når der ingen data er.

Selve knappens text variable er f-knap2
og dens instance er f1-knap2
Knappen er placeret i .main

loadVariables("forside.php", "_root.main");
if (f-knap2==null) {
    setProperty("f1-knap2", _visible, "0");
}
Avatar billede eagleeye Praktikant
01. marts 2003 - 23:44 #1
Prøv uden " omkring 0, det er en boolean værdi:

    setProperty("f1-knap2", _visible, 0);
Avatar billede _k Nybegynder
01. marts 2003 - 23:50 #2
mangler du ikke "main" i if-sætningen? Du kan evt. prøve med:

if (_root.main.f-knap2=="") {
    setProperty("f1-knap2", _visible, "0");
}

...ellers kan det være, at du skal kalde din setProperty udenfor knappen, f.eks. i en onclipEvent(data) på dit main mc - simpelthen for at være sikker på at variablen når at blive hentet ind, inden du kører if-sætninger på den....
Avatar billede jacksleo Nybegynder
02. marts 2003 - 00:04 #3
set property linien virker fint for sig selv
så det er if sætningen der er noget galt med og at at kalde med main løser det ikke
Avatar billede pyroman Nybegynder
02. marts 2003 - 17:39 #4
prøv med:

if(!_root.main.f-knap2){
  _root.main.f1-knap2._visible = 0;
}

eller

if(_root.main.f-knap2 == ""){
  _root.main.f1-knap2._visible = 0;
}

/Filip
Avatar billede baitianlong Nybegynder
02. marts 2003 - 17:52 #5
if(_root.main.f1-knap2.f-knap2 != "") _root.main.f1-knap2._visible = 1;
else _root.main.f1-knap2._visible = 0

(o; endnu et forslag !!
Avatar billede jacksleo Nybegynder
02. marts 2003 - 17:56 #6
pyroman... funker desværre ikke...
1. fik knappen til at forsvinde selvom der var data
2. gjorde ingenting
Avatar billede jacksleo Nybegynder
02. marts 2003 - 18:00 #7
heller ikke din legend
Avatar billede barklund Nybegynder
02. marts 2003 - 18:37 #8
Har du flash MX?

For det er et spørgmsål om loading... Der går jo naturligt nogle hundrede millisekunder fra din loadVariables eksekveres til dine variabler eksisterer... Derfor skal du vente på variablerne først. Enten via LoadVars, frame-loop eller onData...
Avatar billede jacksleo Nybegynder
02. marts 2003 - 18:53 #9
har MX....
har prøvet først at loade if sætningen efter 2 sekunder. Men det virker enten slet ikke eller fjerner alle knapper selvom der er loadet variabler til dem.

Har fjernet - for at mindste fejl margener men fx

if(_root.main.f1knap2.fknap2 != "") fjerner alle knapper selvom der er data
Avatar billede jacksleo Nybegynder
02. marts 2003 - 18:56 #10
så den må behandle det forkert et eller andet sted.

Løsning burde være

if(_root.main.f1knap2.fknap2 == "undefined")

men den gør nada
Avatar billede barklund Nybegynder
02. marts 2003 - 19:01 #11
Du kan IKKE køre de to udtryk lige efter hinanden. Det er en fejl!

Hvis det ikke virkede med mange frames imellem, så betyder det blot, at der var mere end en fejl!
Avatar billede jacksleo Nybegynder
02. marts 2003 - 19:02 #12
det virker..
Avatar billede jacksleo Nybegynder
02. marts 2003 - 19:05 #13
if (fknap2 == undefined) {
    setProperty("f1knap2", _visible, "0");
}
if (fknap3 == undefined) {
    setProperty("f1knap3", _visible, "0");
}
if (fknap4 == undefined) {
    setProperty("f1knap4", _visible, "0");
}

dette skal bare køres med et delay på 2 sekunder.... så bark du gav det jeg manglede så pointne må være dine. Hvis du lige smider et svar
Avatar billede barklund Nybegynder
02. marts 2003 - 19:10 #14
Jotak :o)
Avatar billede barklund Nybegynder
02. marts 2003 - 19:11 #15
Hvis du har MX og udvikler til Flash 6, ville det dog være smartere at lave med loadVars... Et det tilfældet?
Avatar billede jacksleo Nybegynder
02. marts 2003 - 19:13 #16
jeg er ikke lige med på hvad du mener..
jeg loader variablerne via:
loadVariables("forside.php", "_root.main");
Avatar billede barklund Nybegynder
02. marts 2003 - 20:06 #17
Du kan kun bruge loadVars, hvis du har Flash MX? Har du kun Flash 5, så er ovenstående den rigtige metode. Har du Flash MX?
Avatar billede jacksleo Nybegynder
02. marts 2003 - 20:07 #18
har MX og det er flash6 jeg laver
Avatar billede barklund Nybegynder
02. marts 2003 - 21:06 #19
Så brug:

setVisibility = new LoadVars();
setVisibility.home = this;
setVisibility.onLoad = function(s) {
    if (s) {
        this.home.f1knap2._visible = this.fknap2.length;
        this.home.f1knap3._visible = this.fknap3.length;
        this.home.f1knap4._visible = this.fknap4.length;
    }
}
setVisibility.load("forside.php");

Det burde virke :o)
Avatar billede jacksleo Nybegynder
02. marts 2003 - 21:39 #20
det gør det så ikke lige
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Capgemini Danmark A/S

Market Segment Lead, CPRD

Forsvarets Efterretningstjeneste

Network engineer - Routing & Switching

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer