I think I understand HOW Javascript has to work in order to be O.K. for section 508. But I have been unable to find an answer to a related question: does my site need to work W
ADA 508 doesn't require you to have JavaScript. All you have to do is add a <noscript>
tag that explains that they can't log in without JavaScript enabled. Then when it is enabled, you should verify that the event handlers that are called have no problems on screen readers.
This site explains the javascript event handlers that work well with most screen readers: http://ada508.com/ OnClick and simple validation should be fine.
So in short...no, all content does not have to be accessible to readers without JavaScript as long as you have a <noscript>
tag on the page.
It used to be the case that finding JavaScript on a website meant there was little to no chance that the site in question would be accessible. Thanks to things like ARIA roles and especially focus control, inaccessible javascript is a thing of the past.
In order to make your js comply, you simply have to pay attention to where the focus is, and whether or not your actual content can be accessed by assistive technology. There are easily dozens of resources on this topic, but none so much to the point as Google's Intro to Web Accessibility class. Fear not, it doesn't require much more than an email address, and you can get the majority of what you need in a hurry, should that be your need. Good luck! Accessible js takes a little bit of work, but it is worth it!
Section 508 compliance rules do not specify at all whether you use or do not use Javascript. It merely enforces the fact that you must provide equal access to the information you are presenting electronically, regardless of electronic delivery method. For a website, whether that is done by making your website accessible (with or without javascript), a text-only version of your entire website, or a phone number that someone can call that is staffed appropriately and has access to all that information, you have satisfied the intent of the law.
One of the best resources for information on 508 compliance is http://www.section508.gov.
Recent surveys have found that a vast majority of users that run screen readers have JS enabled, not disabled. Granted, a screen reader does what its name implies: it reads the screen. If a screen reader doesn't know where to read, then it can't do its job. For instance, modal dialogs are probably a bad idea if you're looking to support those users, though including something like form validation probably isn't a terrible idea.
The idea is to keep items on the screen from changing too rapidly. If you update large elements of your UI frequently using JS, you're probably not going to get too great of a response from the screen reader community. On the other hand, if the majority of the JS is behind-the-scenes, then most screen reader users probably won't even notice that you're using scripts.
The list at the bottom of the link I provided above gives some great insight into the biggest problems that screen reader users face. Avoiding any situations where those scenarios might pop up (i.e.: visual CAPTCHAs, complex layouts, rapidly updated UI elements, etc.) will probably leave you in good shape.
And as always, download yourself a screen reader (there are plenty of free and open source readers available) to test out your software.
Good luck!