Table of Contents. To create maintainable code, however, you should abstain from using "inline Javascript" (i.e. DataTables - (jQuery plug-in) smoothState.js - Unobtrusive page transitions with jQuery. DevDocs is an all-in-one API documentation reader with a fast, jTable - A jQuery plugin to create AJAX based CRUD tables. Therefore, validation doesn't work automatically on dynamically generated forms. ASP.NET Web API introduces a new API for creating REST APIs and making AJAX callbacks to the server. Anime.js - A JavaScript animation engine. Improved: The cache process in the plugin. +1 I tried window.onload = thinking that my script would wait until everything was fully downloaded before running but it seems window.onload actually behaves like document.addEventListener("DOMContentLoaded", , whereas the window.addEventListener("load", really does wait for everything to be fully downloaded. Improved: The cache process in the plugin. Abort Ajax requests using jQuery. It comes with a plethora of If the web project does not implement the Bootstrap CSS framework, the Bootstrap library is unnecessary. The jQuery Unobtrusive Ajax library complements jQuery Ajax methods by adding support for specifying options for HTML replacement via Ajax calls as HTML5 data-* elements. Content Delivery Networks (CDNs) To give your users the fastest download speeds, you might instead prefer to reference knockout.js on one of the following third-party CDNs: CDNJS . Get started for free on Windows, Linux, or macOS. function removeClass() { let element = document.getElementById('id1'); // removing class element.classList.remove('beautify'); } ajax.microsoft.com renamed to ajax.aspnetcdn.com Visual Studio .vsdoc Support Using ASP.NET Ajax from the CDN Using jQuery from the CDN Using jQuery UI from the CDN Third-Party Files on the CDN. function removeClass() { let element = document.getElementById('id1'); // removing class element.classList.remove('beautify'); } I also gave an unobtrusive option in my answer. How to manage a redirect request after a jQuery Ajax call. The