The code for the View page is as follows:
<div id= "Ajax_search" >@using (Ajax.beginform ("Search",//Action"Test",//Controller Newajaxoptions {Insertionmode=Insertionmode.insertafter, HttpMethod= "GET", Updatetargetid= "Ajax_search", Loadingelementid= "Loader",//service side in the execution of the operation, show a progress to the user to see, equivalent to the progress barOnFailure = "Failed",//JS method called after server execution failedonsuccess = "Success"//JS method invoked after successful execution of the server })) { <input type= "text" name= "q"/> <input type= "Submit" value= "search"/> }</div>
There is an action in the controller that performs an asynchronous search, with the following code:
// asynchronous search public actionresult Search (string Q) { // throw new Exception ("intentionally giving you an error"); //System.Threading.Thread.Sleep (3000 string msg = " keywords you searched for: +Q; return Partialview ( " _search , MSG); }
To add a new distribution View "also called: Partial view" to the specified directory, to show the results of an asynchronous search.
Of course, as Ajax.actionlink introduced, also need to refer to Jquery.unobtrusive-ajax.min.js to the master page "_layout.cshtml"
Ajax.beginform Asynchronous Search