Here is the form and addingTask() function. <form method="GET" action="/newtask" onsubmit="addingTask()"> <label> Today's Task: </label><br> <input type="text" id="task"><br> <button type="submit">Add</button> </form> <script> function addingTask() { var data = { task: $("#task").val(), } $.ajax({ type: "GET", url: "/newtask", dataType: 'JSON', data: data, success: function success(result) { console.log("iiiiiiiiiiiii", result); console.log("565656565656565"); }, error: function error(error) { console.log("sdsdsdsdsd", error); console.log("mmmmnnnnmmmnnn"); } }) } </script> This is the route file. var express = require('express'); var router = express.Router(); const indexController = require("../controllers/indexController"); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'To-Do-List' }); }); router.get('/newtask', indexController.createTask ); module.exports = router; This is the controller function file. const createTask = (req, res, next) => { console.log(req.body); var variable = JSON.stringify(req.body); res.render('index', { title: variable }); }; module.exports = { //A module means file createTask }Pantalla inicial https://i.stack.imgur.com/itWPX.png
Después de completar el formulario y hacer clic en el botón Agregar, obtengo un título vacío https://i.stack.imgur.com/AqIWf.png
Intenté cambiar el método http a 'POST' pero aún ocurre el mismo error.
La clave "tipo" dentro de $.ajax() debe ser 'POST' y también en el archivo del enrutador debe ser router.post y finalmente, dentro del archivo de función del controlador debe ser res.send({data: req.body.task }); en lugar de res.render(índice, {título: variable});