If statement to long for one line, goes to next line

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • ismailc
    New Member
    • Sep 2006
    • 200

    If statement to long for one line, goes to next line

    Good day, i have an If statement that is to long for one line goes to the second line.

    I cant defein var for it as when the object are not there it gives an error.

    So i had to go with the object value, I cant break it up more as it is a group of OR statements

    How do i let the if continue on next line? please help

    Code:
     else if((document.getElementById('VE1020User').value=="LOCAL" || document.getElementById('VE1020User').value=="NATIONAL") && document.getElementById('VE1060NewSupplier').value=="Yes" && document.getElementById('VE10IntVendorFields').value=="True")
     {
       if (document.getElementById('VE1080Name').value=="" || document.getElementById('VE10435SuppName').value=="" || document.getElementById('VE1090Postal').value=="" || document.getElementById('VE10445PostalCode').value=="" || document.getElementById('VE1010Province').value=="" || document.getElementById('VE10110Country').value=="" || document.getElementById('VE10120Phone').value=="" || document.getElementById('VE10130Fax').value=="" || document.getElementById('VE10140Email').value=="" || document.getElementById('VE10160Company').value=="" || document.getElementById('VE10170VendorType').value=="" || document.getElementById('VE10180Currency').value=="" || document.getElementById('VE10190Terms').value=="" || document.getElementById('VE10200PaymentType').value=="" || document.getElementById('VE10210Bank').value=="" || document.getElementById('VE10220BankCode').value=="" || document.getElementById('VE10230BankAccNo').value=="" || document.getElementById('VE10280SupplierAdd').value=="" || document.getElementById('V10290PhoneNumber').value=="" || document.getElementById('VE10310FaxNumber').value=="" || document.getElementById('VE10665TaxCode').value=="")
     {
  • larztheloser
    New Member
    • Jan 2010
    • 86

    #2
    What do you mean "too long for one line"? There is no max. limit on how long a line can be. Likely that your text editor, or whatever you're using, is simply "wrapping" the IF line when it gets too long - but your code should still work normally. You can use an unlimited number of OR statements.

    If you want, open your file in notepad (or whatever your os has) and that should display your IF statement without the new line. If it doesn't, delete the new line. Just to reiterate - lines can be as long as you like them. I'm sure I've written longer lines of javascript! (-;

    Comment

    • ismailc
      New Member
      • Sep 2006
      • 200

      #3
      Hi, Thank You for the assisting.
      I was opening it notepad (js file) but to check if was correct i double click the js file & it would complain about the If line
      because it breaks oof to the next line.

      I done this to get me going for the time being:
      Code:
       else if((document.getElementById('VE1020User').value=="LOCAL" || document.getElementById('VE1020User').value=="NATIONAL") && document.getElementById('VE1060NewSupplier').value=="Yes" && document.getElementById('VE10IntVendorFields').value=="True")
       {
            VE1080Name = document.getElementById('VE1080Name').value;
            VE10435SuppName = document.getElementById('VE10435SuppName').value;
            VE1090Postal=document.getElementById('VE1090Postal').value;
            VE10445PostalCode=document.getElementById('VE10445PostalCode').value;
            VE1010Province=document.getElementById('VE1010Province').value;
            VE10110Country=document.getElementById('VE10110Country').value;
            VE10120Phone=document.getElementById('VE10120Phone').value;
            VE10130Fax=document.getElementById('VE10130Fax').value;
            VE10140Email=document.getElementById('VE10140Email').value;
            VE10160Company=document.getElementById('VE10160Company').value;
            VE10170VendorType=document.getElementById('VE10170VendorType').value;
            VE10180Currency=document.getElementById('VE10180Currency').value;
            VE10190Terms=document.getElementById('VE10190Terms').value;
            VE10200PaymentType=document.getElementById('VE10200PaymentType').value;
            VE10210Bank=document.getElementById('VE10210Bank').value;
            VE10220BankCode=document.getElementById('VE10220BankCode').value;
            VE10230BankAccNo=document.getElementById('VE10230BankAccNo').value;
            VE10280SupplierAdd=document.getElementById('VE10280SupplierAdd').value;
            V10290PhoneNumber=document.getElementById('V10290PhoneNumber').value;
            VE10310FaxNumber=document.getElementById('VE10310FaxNumber').value;
            VE10665TaxCode=document.getElementById('VE10665TaxCode').value;
      
            if (VE1080Name==""  || VE10435SuppName=="" || VE1090Postal=="" || VE10445PostalCode=="" || VE1010Province==""|| VE10110Country=="" || VE10120Phone=="" || VE10130Fax=="" || VE10140Email=="" || VE10160Company=="" || VE10170VendorType=="" || VE10180Currency=="" || VE10190Terms=="" || VE10200PaymentType=="" || VE10210Bank=="" || VE10220BankCode=="" || VE10230BankAccNo=="" || VE10280SupplierAdd=="" || V10290PhoneNumber=="" || VE10310FaxNumber=="" || VE10665TaxCode=="")
            {
               showDialog('Warning','All Information is required (INTERNAL - Vendor Application Form).','warning');					
            }

      Comment

      • larztheloser
        New Member
        • Jan 2010
        • 86

        #4
        What exactly was the error you were getting? A "line is too long" error, surely not!?

        Comment

        • ismailc
          New Member
          • Sep 2006
          • 200

          #5
          The if would break to next line

          If ... test
          ="" || test2="")

          Error: At line: 50
          Expected ")"

          Regards

          Comment

          • gits
            Recognized Expert Moderator Expert
            • May 2007
            • 5390

            #6
            after having a look at the code first i would suggest to write a short helper method to shorten the code:
            Code:
            var getElVal = function(id) {
                return document.getElementById(id).value;
            }
            so you might use it like (and don't need to retype document.getEle mentById().valu e that much):
            Code:
            if ( (getElVal('VE1020User') == "LOCAL" 
                || getElVal('VE1020User') == "NATIONAL") 
                && getElVal('VE1060NewSupplier') == "Yes" 
                && getElVal('VE10IntVendorFields') == "True" ) {
            
                // do something here
            }
            basicly a condition don't need to be one line ... it is opened and terminated with corresponding brackets, so you could simply linebreak it. for readabilty it is best to have the conditions well seperated per line.

            kind regards

            Comment

            • ismailc
              New Member
              • Sep 2006
              • 200

              #7
              Silly me - Thank You works great
              Code:
               else if((document.getElementById('VE1020User').value=="LOCAL" || document.getElementById('VE1020User').value=="NATIONAL") && document.getElementById('VE1060NewSupplier').value=="Yes" && document.getElementById('VE10IntVendorFields').value=="True"
                        && document.getElementById('VE1080Name').value==""  || document.getElementById('VE10435SuppName').value=="" || document.getElementById('VE1090Postal').value=="" 
                        || document.getElementById('VE10445PostalCode').value=="" || document.getElementById('VE1010Province').value=="" || document.getElementById('VE10110Country').value=="" 
                        || document.getElementById('VE10120Phone').value=="" || document.getElementById('VE10130Fax').value=="" || document.getElementById('VE10140Email').value=="" 
                        || document.getElementById('VE10160Company').value=="" || document.getElementById('VE10170VendorType').value=="" || document.getElementById('VE10180Currency').value=="" 
                        || document.getElementById('VE10190Terms').value=="" || document.getElementById('VE10200PaymentType').value=="" || document.getElementById('VE10210Bank').value==""
                        || document.getElementById('VE10220BankCode').value=="" || document.getElementById('VE10230BankAccNo').value=="" || document.getElementById('VE10280SupplierAdd').value=="" 
                        || document.getElementById('V10290PhoneNumber').value=="" || document.getElementById('VE10310FaxNumber').value=="" || document.getElementById('VE10665TaxCode').value=="")
               {
                     showDialog();					
               }

              Comment

              Working...