Estoy buscando una fecha en la base de datos usando ajax para llamar a la función. El problema es que me da un resultado 404 cuando debería estar mostrándolo y el ajax entra en modo de error. código de controlador que funciona

        [HttpPost]
        public ActionResult SearchDate(DateTime date)
        {
         code...
         return View(employees);
        }

Código ajax

function SearchByDate()
        {
            var x = document.getElementById("DateInputField");
            if (x.value != "")
            {
                $.ajax({
                    url: '/Employees/SearchDate',
                    type: 'GET',
                    data: { "date": x.value },
                    error: function (data) {
                        alert('Error!');
                    },
                    succes: function (data)
                    {
                        alert('Succes!');
                    }
                });
            }
            else
            {
                alert('Date not selected!')
            }
        }

Ejecuté el programa con puntos de interrupción y sale con el resultado correcto, pero no muestra ninguno y en la consola del desarrollador obtengo ERROR 404 ¡No encontrado! y también el error de alerta devuelve ajax. ¡Por favor ayuda! Ty

Actualice después de algunos problemas donde se solucionó. Aparece este error: ¡No se encontró la vista 'SearchDate' o su maestro o no hay un motor de vista que admita las ubicaciones buscadas!

2
xDevil 11 dic. 2015 a las 16:36

3 respuestas

La mejor respuesta

Tipo cambiado: 'GET', tipo de datos: "html", luego creó una vista parcial que lo renderizó en su interior y cambió la función en el controlador a HTTPGET y devolvió la vista parcial como resultado.

0
xDevil 11 dic. 2015 a las 14:49

Hay múltiples errores:

  1. [HttpPost] en el backend y está enviando una solicitud GET.
  2. 404 significa que no se encuentra el archivo, por lo que su ruta podría no ser correcta.
  3. La devolución de llamada succes debe ser success.
  4. contentType no está configurado; en cambio, puedes buscar en traditional:true,.
3
Jai 11 dic. 2015 a las 13:40

Utilice la cadena de consulta en lugar de enviar datos desde el parámetro de datos.

2
V K 11 dic. 2015 a las 13:44
34224814