Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => Mensaje iniciado por: brandonhz en 12 Noviembre 2018, 22:34 PM

Título: Ayuda! diferencia entre form action y $http.post()
Publicado por: brandonhz en 12 Noviembre 2018, 22:34 PM
Buen día, tengo un formulario en el cual los valores que capturo en el necesito enviarlos a un controlador. Dicho controlador en mvc asp.net me retorna una nueva vista como respuesta.

Mi pregunta es, mediante $http.post(), puedo obtener esa vista que me retorna el controlador?. o necesariamente debo utilizar el form action desde el HTML para obtener esa nueva vista?

Asi como lo tengo, realiza la petición post, el controlador hace lo que tiene que hacer, pero no me retorna la nueva view().

Este es mi formulario:

Código (html4strict) [Seleccionar]

<div class="jumbotron">
<h1>DATOS</h1>
<p class="lead">Ingrese datos: </p>
    <p class="a"> Codigo: <input type="text" id="codigo"/></p>
    <p class="badge"> Nombres: <input type="text" id="nombres"/></p>
    <p class="caption"> Apellidos: <input type="text"id="apellidos" /></p>
    <p class="danger"> Correo: <input type="text" id="correo" /></p>
    <p class="help-block"> Estado: <input type="number" id="estado"/></p>
    <button ng-click="registrar()" name="registrar"> REGISTRAR </button>


Este es el codigo que tengo para la petición en $http.post

Código (javascript) [Seleccionar]
angular.module("MyApp", [])
.controller("FirstController", function ($scope, $http) {
    $scope.registrar = function () {
        var req = {
            method: 'POST', url: '/Cliente/Create',
            data: {
                "codigo": document.getElementById("codigo").value,
                "nombres": document.getElementById("nombres").value,
                "apellidos": document.getElementById("apellidos").value,
                "correo": document.getElementById("correo").value,
                "estado": document.getElementById("estado").value
            }
        };
        $http(req).then(function (res) {
        });
    };
});


Y este es mi controlador:

Código (csharp) [Seleccionar]
       [HttpPost]
    public ActionResult Create([Bind(Include = "codigo,nombres,apellidos,correo,estado")] clientes e)
    {
            clientes q = new clientes();
            q.create(e);

        return View(q);
    }