Estoy tratando de agregar a la siguiente llamada asíncrona en javascript que envía el parámetro q=<query>
, el segundo parámetro l=<lquery>
, pero no lo veo enviado, comprobado en la consola de herramientas de desarrollo
var searchbox = $('input#search'); var langquery = $('input#fav_language'); var timer = 0; // Executes the search function 250 milliseconds after user stops typing searchbox.keyup(function () { clearTimeout(timer); timer = setTimeout(search, 250); }); async function search() { // Clear results before searching noresults.hide(); resultdiv.empty(); loadingdiv.show(); // Get the query from the user let query = searchbox.val(); // Only run a query if the string contains at least three characters if (query.length > 2) { let lquery = langquery.val(); // Make the HTTP request with the query as a parameter and wait for the JSON results let response = await $.get(apigatewayendpoint, { q: query, l: lquery, size: 25 }, 'json');
el cuerpo html está debajo. Intenté referirme a la identificación del formulario de radio y al nombre de entrada, ambos no funcionaron
<body> <h1>InfoLang - Movie Plot At Your Language</h1> <form id="lang"> <p>Please select language:</p> <input type="radio" id="it" name="fav_language" value="Italian"> <label for="it">Italian</label><br> <input type="radio" id="fr" name="fav_language" value="French"> <label for="fr">French</label><br> <input type="radio" id="he" name="fav_language" value="Hebrew"> <label for="he">Hebrew</label> <br> </form> <hr> <input id="search" autocomplete="off" placeholder="Search your movie" align="center">
Tengo esto por-
if (query.length > 2) { let lquery if (document.getElementById('it').checked) lquery = 'it' if (document.getElementById('fr').checked) lquery = 'fr' ...
y para la pantalla
let title = results[item]._source.title if (lquery == 'it') plot = results[item]._source.description_it if (lquery == 'fr') plot = results[item]._source.description_fr