public override object GetSubmittedValue() { var rawSubmittedData = HttpContext.Current.Request.Form; var isJavaScriptSupport = rawSubmittedData.Get(EPiServer.Forms.Constants.FormWithJavaScriptSupport); if (isJavaScriptSupport == "true") { return(base.GetSubmittedValue()); } string[] addressComponents = rawSubmittedData.GetValues(this.Content.GetElementName()); if (addressComponents == null || addressComponents.Length < 1) { return(null); } // NOTE: submittedValue is an string with format: address_detail | street | city | state | postal_code | country AddressInfo addressObj = new AddressInfo() { address = addressComponents.Length > 0 ? addressComponents[0] : null, street = addressComponents.Length > 1 ? addressComponents[1] : null, city = addressComponents.Length > 2 ? addressComponents[2] : null, state = addressComponents.Length > 3 ? addressComponents[3] : null, postalCode = addressComponents.Length > 4 ? addressComponents[4] : null, country = addressComponents.Length > 5 ? addressComponents[5] : null }; return(addressObj.ToJson()); }