Most ASP.NET Developers have no previous web development experience. Is that a true or false statement? I suspect it's true, but found no statistics to back it up. However, judging from posts in several technical forum sites, one certainly gets that impression.
"Halt App Until JavaScript Confirm Dialog Clicked". "JavaScript in code-behind problem". "How to fire ASP.NET code from JavaScript function". "Confirm delete". These are all titles of recent questions posted in various .NET forums. Also, I've seen a resurgence of questions that web developers either solved, or came to grips with, many years ago. For example, I've seen several discussions about how to "prevent" the user from clicking the "back" button! Another common area of confusion is the difference between client-side and server-side events and scripts. Why all of the confusion? I believe it's intrinsic to ASP.NET development.
One of the key "features" of ASP.NET is that it hides the HTML and JavaScript from the developer. ASP.NET consists of a large set of "ASP.NET Server Controls", which are placed by the developer onto a canvas called a "Web Form". Then the developer codes properties and event methods. Sound familiar? Yes, ASP.NET development was modeled after Visual Basic. This no doubt contributes to the wide appeal among traditional Windows developers.
Each ASP.NET Server Control "renders" or "outputs" HTML when the user browses to a page. In fact, a control may render different HTML, depending on the user's browser. In theory, this is a good thing. The developer …