javascript - single line if statement -



javascript - single line if statement -

please help me. using single line javascript if statement, want execute 2 actions after has checked status not know how set sec statement. thought semicolon work, doesn't. says semicolon error. here code, semicolons...

this.classname === "unclickedbutton" ? this.classname = "clickedbutton"; $("#alert").style.display="block" : this.classname = "unclickedbutton"; $("#alert").style.display="none"

you can this, using comma operator:

this.classname === "unclickedbutton" ? (this.classname = ($("#alert").style.display="block", "clickedbutton")) : (this.classname = ($("#alert").style.display="none", "unclickedbutton"));

...but wouldn't makes readable code. i'd utilize normal if.

here's live example using jquery (source). (i used show , hide, see below). seriously, compare maintainability/readability to:

if (this.classname === "unclickedbutton") { this.classname = "clickedbutton"; $("#alert").style.display = "block"; } else { this.classname = "unclickedbutton"; $("#alert").style.display = "none"; }

i know 1 i'd rather maintenance on. or if want one-liner, alter css have button class , clicked class add it, , (i'm assuming jquery here):

$("#alert").toggle($(this).toggleclass('clicked').hasclass('clicked'));

live example | source

side note: selectors you're using you'd utilize jquery, jquery instances don't have style property. if you're using prototype or mootools, want remove # in front end of alert. if you're using jquery, utilize show , hide methods (and addclass / removeclass).

javascript

Comments

Popular posts from this blog

web services - java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer -

Accessing MATLAB's unicode strings from C -

javascript - mongodb won't find my schema method in nested container -