I'm trying to implement an Ajax call using the tags data-* as described at jquery-ajax-unobtrusive
I know that I can use a javascript function with $.ajax() but my purpose is to experiment with the tags data-ajax...
I tried this code in the cshtml file
<a class="btn btn-primary" data-ajax-url="/Home/AjaxSample" data-ajax="true" data-ajax-success="AjaxSuccess" data-ajax-failure="AjaxError" data-ajax-method="GET">Ajax</a>
// other code...
function AjaxSuccess() { alert('AjaxSuccess'); }
function AjaxError() { alert('AjaxError'); }
The browser shows the button of course, but nothing happens when I click it. I can't discover any error in the browser debugger. Nothing happens apparently.
Intellisense doesn't show the tags data-ajax and friends. Did I forget to include something?
Are there any complete working examples?
The ajax() method can send all type of http requests. The following example sends http POST request to the server. Example: Send POST Request. $.ajax('/jquery/submitData', { type: 'POST', // http method data: { myData: 'This is my data.'
AJAX uses both a browser built-in XMLHttpRequest object to get data from the web server and JavaScript and HTML DOM to display that content to the user. Despite the name “AJAX” these calls can also transport data as plain text or JSON instead of XML. AJAX calls use a JavaScript snippet to load dynamic content.
The ajax() method is used to perform an AJAX (asynchronous HTTP) request. All jQuery AJAX methods use the ajax() method. This method is mostly used for requests where the other methods cannot be used.
The answer from the comments (since no-one has added it):
<script src="~/lib/jquery-ajax-unobtrusive/jquery.unobtrusive-ajax.js"></script>
<!-- the ~ is to symbolize your project's wwwroot folder
Add the above to your master layout with all of your other scripts (_Layout.cshtml
by default).
What this does is include the jQuery unobtrusive ajax file into all of your pages, so that the main script that does all the work is included.
Before doing this, make sure you have installed the package Microsoft.Jquery.Unobtrusive.Ajax
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With