Spaces:
Paused
Paused
| const searchForm = document.querySelector(".search-form"); | |
| const result = document.querySelector(".result"); | |
| const submitButton = document.querySelector(".submit-button"); | |
| const clearDiv = () => { | |
| result.innerHTML = ""; | |
| }; | |
| const buttonLoading = () => { | |
| submitButton.innerHTML = "loading..."; | |
| submitButton.setAttribute("disabled", true); | |
| }; | |
| const buttonDefault = () => { | |
| submitButton.innerHTML = "Submit"; | |
| submitButton.removeAttribute("disabled"); | |
| }; | |
| const renderImg = (imageName) => { | |
| clearDiv(); | |
| const img = document.createElement("img"); | |
| img.src = `/images/${imageName}`; | |
| result.appendChild(img); | |
| }; | |
| const getResult = async (searchQuery) => { | |
| const response = await fetch(`search?query=${searchQuery}`); | |
| const json = await response.json(); | |
| return json.result; | |
| }; | |
| searchForm.addEventListener("submit", async (event) => { | |
| event.preventDefault(); | |
| const query = document.querySelector("#query"); | |
| buttonLoading(); | |
| try { | |
| const res = await getResult(query.value); | |
| renderImg(res); | |
| } catch (err) { | |
| console.error(err); | |
| clearDiv(); | |
| } finally { | |
| buttonDefault(); | |
| } | |
| }); | |