Avatar billede webblaster Nybegynder
08. maj 2006 - 12:29 Der er 5 kommentarer og
1 løsning

Problem med If sætning

jeg har en problem med den her stump kode:

Content = new Array();
Id = new Array();
Status = new Array();
Btn_Id = new Array();
Btn_level = new Array();
Created = new Array();
Created_By = new Array();
Edit = new Array();
Edit_By = new Array();
Publish_Date = new Array();
Expant_Date = new Array();
Delete_Lock = new Array();
Old_Language = new Array();
Old_User = new Array();
Flash_Content = new Array();
newsi = 0;
newsperpage = 10;

var xmlData:XML = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = function(s) {
    if (s) {
        var xmlNodes:String = this.firstChild.childNodes;
        for (var i = 0; i<xmlNodes.length; i++) {
            Content[i] = xmlNodes[i].childNodes[0].firstChild;
            Id[i] = xmlNodes[i].childNodes[1].firstChild;
            Status[i] = xmlNodes[i].childNodes[2].firstChild;
            Btn_Id[i] = xmlNodes[i].childNodes[3].firstChild;
            Btn_level[i] = xmlNodes[i].childNodes[4].firstChild;
            Publish_Date[i] = xmlNodes[i].childNodes[5].firstChild;
            Expant_Date[i] = xmlNodes[i].childNodes[6].firstChild;
            Created[i] = xmlNodes[i].childNodes[7].firstChild;
            Created_By[i] = xmlNodes[i].childNodes[8].firstChild;
            Edit[i] = xmlNodes[i].childNodes[9].firstChild;
            Edit_By[i] = xmlNodes[i].childNodes[10].firstChild;
            Delete_Lock[i] = xmlNodes[i].childNodes[11].firstChild;
            Flash_Content[i] = xmlNodes[i].childNodes[12].firstChild;
            Old_Language[i] = xmlNodes[i].childNodes[13].firstChild;
            Old_User[i] = xmlNodes[i].childNodes[14].firstChild;
            Flash_Content[i] = xmlNodes[i].childNodes[15].firstChild;
           
           
           
           
           
           
            d= xmlNodes.length;
            k = 10;
        }
        loadNews(newsi);
    } else {
       
    }
};
var total = "components/xml/htmcontent/content_" + ConTal + "_" + LanSel + ".xml";
xmlData.load(total);

function loadNews(newnewsi) {
    if (newnewsi<0)
        newnewsi = 0;
    else if (newnewsi>NH.length)
        newnewsi = Math.floor(Content.length/newsperpage)*newsperpage + Content.length%10 -1;
    _root.newsi = newnewsi;
    for (i=1 ; i<=newsperpage ; i++) {
        if (String(Content[newnewsi])!="undefined" || String(Content[newnewsi])!="") {
            _root["Content"+i] = Content[newnewsi];
            _root["Id"+i] = Id[newnewsi];
            _root["Status"+i] = Status[newnewsi];
            _root["Btn_Id"+i] = Btn_Id[newnewsi];
            _root["Btn_level"+i] = Btn_level[newnewsi];
            _root["Publish_Date"+i] = Publish_Date[newnewsi];
            _root["Expant_Date"+i] = Expant_Date[newnewsi];
            _root["Created"+i] = Created[newnewsi];
            _root["Created_By"+i] = Created_By[newnewsi];
            _root["Edit"+i] = Edit[newnewsi];
            _root["Edit_By"+i] = Edit_By[newnewsi];
            _root["Delete_Lock"+i] = Delete_Lock[newnewsi];
            _root["Old_Language"+i] = Old_Language[newnewsi];
            _root["Old_User"+i] = Old_User[newnewsi];
            _root["Flash_Content"+i] = Flash_Content[newnewsi];
           
        } else {
            _root["Content"+i] = "";
            _root["Id"+i] = "";
            _root["Status"+i] = "";
            _root["Btn_Id"+i] = "";
            _root["Btn_level"+i] = "";
            _root["Publish_Date"+i] = "";
            _root["Expant_Date"+i] = "";
            _root["Created"+i] = "";
            _root["Created_By"+i] = "";
            _root["Edit"+i] = "";
            _root["Edit_By"+i] = "";
            _root["Delete_Lock"+i] = "";
            _root["Old_Language"+i] = "";
            _root["Old_user"+i] = "";
            _root["Flash_Content"+i] = "";
           
        }
       
       
           
        newnewsi++;
    }
}

koden er en paging funktion og når man kommer til sidste page/side 
med indhold og der er mindre indhold end movieclips som disse loades ind og Indholdet af MovieClips'ene bliver = "undefined" skal de sættes = "" men den If sætning som skulle gøre dette virker ikke!
Avatar billede barklund Nybegynder
08. maj 2006 - 12:42 #1
if (String(Content[newnewsi])!="undefined" || String(Content[newnewsi])!="") {

Betyder:

hvis strengen ikke er "undefined" eller hvis strengen ikke er tom

Altså, kan du nævne en streng, der ikke ville opfylde det? Der findes ingen strenge, der både er "undefined" og tomme. Derfor skal du rette din "eller" til "og" - altså:

if (String(Content[newnewsi])!="undefined" && String(Content[newnewsi])!="") {

Lige omkring den slags kan det betale sig at lave den modsatte test  og så negere:

if (!(String(Content[newnewsi])=="undefined" || String(Content[newnewsi])=="")) {

Altså hvis det ikke gælder, at strengen er "undefined" eller er tom, så... - men dette betyder det samme som den anden sætning jeg skrev (med &&).

:)

--
Morten Barklund
Avatar billede webblaster Nybegynder
08. maj 2006 - 12:46 #2
JA!! selvfølgelig :) Tak for hjælpen!! smid et svar!!
Avatar billede barklund Nybegynder
08. maj 2006 - 13:02 #3
:)
Avatar billede barklund Nybegynder
08. maj 2006 - 13:03 #4
Det er dog lige rigeligt mange point for at rette to tegn - tag bare de fleste selv :)
Avatar billede webblaster Nybegynder
08. maj 2006 - 14:39 #5
Du får dem allesammen :)
Avatar billede barklund Nybegynder
08. maj 2006 - 15:15 #6
Well, tark for points :)
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

Politiets Efterretningstjeneste

Teamledere til PETs indhentningsafdeling

Styrelsen for Grøn Arealomlægning og Vandmiljø

Teamleder til Application Management

Djurslands Bank

IT-udvikler