¿Cómo hago para agregar un objeto al final de mi dirección de URL? En este momento, $ año no se agrega a la solicitud GET.
<input type = "text" id="year"> <input type = "submit" id="btn"> <script > document.getElementById("btn").addEventListener("click", function() { var $year = document.getElementById("year"); request = new XMLHttpRequest(); request.open("GET", "https://mudfoot.doc.stu.mmu.ac.uk/node/api/halloffame?year="+$year, true); request.send(null); } return val; }use value() después de getElementById para obtener el valor de ese elemento seleccionado
<input type="text" id="year"> <input type="submit" id="btn"> <script> document.getElementById("btn").addEventListener("click", function () { var $year = document.getElementById("year").value; request = new XMLHttpRequest(); const reqUrl = "https://mudfoot.doc.stu.mmu.ac.uk/node/api/halloffame?year=" + $year console.log("reqUrl: ", reqUrl); request.open("GET", reqUrl, true); request.send(null); }) </script>Intenta usar:
document.getElementById("btn").addEventListener("click", function() { var $year = document.getElementById("year").value; request = new XMLHttpRequest(); request.open("GET", "https://mudfoot.doc.stu.mmu.ac.uk/node/api/halloffame?year=" + $year, true); request.send(null); }Creo que su problema era que no estaba obteniendo el valor de la entrada, solo estaba seleccionando el elemento.
Estabas haciendo: document.getElementById("year") que te da el elemento. Pero debe hacer document.getElementById("year").value que le da el valor del cuadro de texto.