javascript - Form posting in MVC4 using AJAX - partialview and ModelState.IsValid and modalbox -


i'm using asp.net mvc4 create application , i'm facing issue regarding ajax , partial views.

right now, have view rendering :

  • a partial view (called _createuser) modalbox containing form create user in application (rendered via @{html.renderpartial("_createuser");})
  • a partial action (called listusers) action renders users registered in application (rendered via @{html.renderaction("users");} in html table

when user clicks button, modal box contained in _createuser displayed via jquery user can type informations new user. when clicks on button in modal box, form submitted via ajax action in controller checks modelstate.isvalid.

and i'm stuck because don't know correct way of handling success/error partial view using jquery because if model correct , registration correct, want refresh list of users. model not valid, want refresh modal box errors raised modelstate.

my action :

[httppost] [validateantiforgerytoken] public actionresult register( registermodel model )     {         if( modelstate.isvalid )         {             try             {                 websecurity.createuserandaccount( model.username, model.password );                 websecurity.login( model.username, model.password );                  viewbag.createusersucceded = true;                  return redirecttoaction( "listusers" );             }             catch (membershipcreateuserexception e)             {                 modelstate.addmodelerror( "", errorcodetostring( e.statuscode ) );             }         }          return partialview( "_createuser", model );     } 

my jquery pretty simple :

function submitcreateuserform() {     $.ajax({         type: "post",         url: '@url.action("register")',         data: $("#createuserform").serialize(),         success: function (result, status, jqxhr) {             ????         }     }); } 

i think correct way should use json and, instead of returning , actionresult, should return json containing status field , data related users list or validation errors , using status field know part of main view must updated. don't know how mix json result , razor view. clue?

updated (i can't answer own question right or have wait 8 hours).

ok, ended using found in link http://craftycodeblog.com/2010/05/15/asp-net-mvc-render-partial-view-to-string/

it's pretty straightforward , job well!


Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

qt - Errors in generated MOC files for QT5 from cmake -