Ummm... that's the same as CFScript switch statements from prior
versions of CF...

Don't know that I'd say they're more powerful -- they work
differently, and in my case more often than not the CFScript
functionality is what I'd rather have available to me. Often when I
need to write code that's CF5 compatible I don't have that luxury
unfortunately, since there were a lot of tags that couldn't be written
into functions in cf5.

I don't like leaving the {} markers off of the individual cases tho...

> Actually, in MX the CFScript version of switch allows you
> to stack multiple case values and uses the break command.
> This makes it much more powerful than CFSwitch and gives
> you all the features of the JS switch statement.

> switch(arraylen(arguments)) {
>     case "1": argument2 = yadda;
>     case "2": argument3 = yadda; break;
>     case "3": case "4": argument1 = yadda;
> }

> Kevin
>   ----- Original Message -----
>   From: S.Isaac Dealey
>   To: [EMAIL PROTECTED]
>   Sent: Monday, January 26, 2004 11:43 AM
>   Subject: Re: JavaScript


>   That works with CF in CFScript also... I like to use it
>   with functions
>   sometimes for the number of arguments:

>   switch (arraylen(arguments)) {
>   case "1": { argument2 = yadda; }
>   case "2": { argument3 = yadda; }
>   default: { yadda; }
>   }

>   Makes it a little easier than having multiple
>   comparisons of the
>   number of arguments.

>   The delimitered case statements are a bit different --
>   you can't have
>   the same value in two case blocks, so for instance you
>   can't say:

>   <cfcase value="1"></cfcase>
>   <cfcase value="1,2"></cfcase>

>   Delimiters are nice, but they still don't allow quite
>   the same
>   functionality as the cfscript switch statement (granted,
>   you don't get
>   delimiters in cfscript either, so there are pros and
>   cons either way).
>   Personally I think it would have been nice if they'd
>   provided a way of
>   allowing the tag-based case statements to cascade, like

>   <cfswitch cascade="true">
>     <cfcase value="1">
>       blah blah blah
>       <cfbreak>
>     </cfcase>
>     <cfcase value="2"></cfcase>
>     <cfcase value="3"></cfcase>
>   </cfswitch>

>   Which would allow you to get the same functionality from
>   a tag-based
>   switch. But it's such a "one-off" feature (so
>   infrequently mentioned)
>   I doubt it'll ever be implemented.


>   > Might be a little easier to read with a select/case
>   > ;)
>   > It works just like the CF one, except you need to use
>   > a
>   > break statement where you want it to stop processing.
>   > (pretty powerful that way - can have multiple case
>   > blocks
>   > cascade)


>   >  function checkCCAccount(Ticket) {
>   >    var pmt =
>   >    Ticket.PaymentType.options[Ticket.PaymentType
>   >    .selectedIndex].value;
>   >    switch(pmt){
>   >     case 1:
>   >       alert(pmt + "You must enter the account
>   >       information
>   >       if you are paying by Corporate Check");
>   >       break;
>   >     case 3: case 4: case 5: case 6:
>   >       alert(pmt + "Please note that your credit card
>   >       will
>   >       be process at the time of the service call");
>   >       break;
>   >    }
>   >  }


>   > a lot of people dont realize you can do the same thing
>   > in
>   > cold fusion - have a multiple values for a single
>   > case statement with delimiters in it.  i.e. -

>   > <cfswitch expression="#myValue#">
>   >   <cfcase value="1,2">
>   >                 <!--- for values 1, 2 --->
>   >  </cfcase>
>   >  <cfcase value="3,4,5,6">
>   >                 <!--- for values 3, 4, 5, 6 --->
>   >  </cfcase>
>   >  </cfswitch>

>   > just a tid bit that gets overlooked a lot it seem, so
>   > worth mentioning :)


>   > -Nate
>   >   ----- Original Message -----
>   >   From: Bruce Sorge
>   >   To: [EMAIL PROTECTED]
>   >   Sent: Saturday, January 24, 2004 3:59 PM
>   >   Subject: JavaScript


>   >   Ahh. My arch nemesis, JavaScript. I am having issues
>   >   with this piece of code:

>   >   function checkCCAccount(Ticket) {
>   >     Pmt = Ticket.PaymentType.selectedIndex
>   >      if (Ticket.PaymentType.options[Pmt].value == 1);
>   >      {
>   >       alert(Ticket.PaymentType.options[Pmt].value +
>   >       "You
>   >       must enter the account information if you are
>   >       paying
>   >       by Corporate Check");
>   >      }
>   >      else if (Ticket.PaymentType.options[Pmt].value ==
>   >      3);
>   >      {
>   >       alert(TIcket.PaymentType.options[Pmt].value +
>   >       "Please note that your credit card will be
>   >       process
>   >       at the time of the service call");
>   >      }
>   >      else if (Ticket.PaymentType.options[Pmt].value ==
>   >      4);
>   >      {
>   >       alert(TIcket.PaymentType.options[Pmt].value +
>   >       "Please note that your credit card will be
>   >       process
>   >       at the time of the service call");
>   >      }
>   >      else if (Ticket.PaymentType.options[Pmt].value ==
>   >      5);
>   >      {
>   >       alert(TIcket.PaymentType.options[Pmt].value +
>   >       "Please note that your credit card will be
>   >       process
>   >       at the time of the service call");
>   >      }
>   >      else (Ticket.PaymentType.options[Pmt].value ==
>   >      6); {
>   >       alert(TIcket.PaymentType.options[Pmt].value +
>   >       "Please note that your credit card will be
>   >       process
>   >       at the time of the service call");
>   >      }
>   >     }

>   >   I keep getting a syntax error. Any takers?

>   >   Thanks,

>   >   Bruce


>   >         ----------------------------------------------
>   >         ----
>   >         -----------------------------
>   >         This message was processed by Mail Filter
>   >         Extension
>   >         http://sssolutions.net/mf/
>   >         ----------------------------------------------
>   >         ----
>   >         -----------------------------





>   s. isaac dealey                214-823-9345

>   team macromedia volunteer
>   http://www.macromedia.com/go/team

>   chief architect, tapestry cms
>   http://products.turnkey.to

>   onTap is open source
>   http://www.turnkey.to/ontap


>   -----------------------------------------------
>   To post, send email to [EMAIL PROTECTED]
>   To unsubscribe:
>      Send UNSUBSCRIBE to [EMAIL PROTECTED]
>   To subscribe / unsubscribe: http://www.dfwcfug.org



s. isaac dealey                214-823-9345

team macromedia volunteer      http://www.macromedia.com/go/team

chief architect, tapestry cms  http://products.turnkey.to

onTap is open source           http://www.turnkey.to/ontap


-----------------------------------------------
To post, send email to [EMAIL PROTECTED]
To unsubscribe: 
   Send UNSUBSCRIBE to [EMAIL PROTECTED]
To subscribe / unsubscribe: http://www.dfwcfug.org

Reply via email to