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!
3 respuestas
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.
Hay múltiples errores:
[HttpPost]
en el backend y está enviando una solicitudGET
.404
significa que no se encuentra el archivo, por lo que su ruta podría no ser correcta.- La devolución de llamada
succes
debe sersuccess
. contentType
no está configurado; en cambio, puedes buscar entraditional:true,
.
Utilice la cadena de consulta en lugar de enviar datos desde el parámetro de datos.
Preguntas relacionadas
Nuevas preguntas
javascript
Para preguntas sobre la programación en ECMAScript (JavaScript / JS) y sus diversos dialectos / implementaciones (excepto ActionScript). Incluya todas las etiquetas relevantes en su pregunta; por ejemplo, [node.js], [jquery], [json], etc.