-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
69 lines (67 loc) · 2.91 KB
/
script.js
File metadata and controls
69 lines (67 loc) · 2.91 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
document.getElementById("button").addEventListener('click',()=>{
let inputValue = document.getElementById('inputName').value;
console.log('Input Value:', inputValue); // Add this line to log the input value
let details = document.getElementById("details");
details.innerHTML = "";
fetch(`https://www.themealdb.com/api/json/v1/1/search.php?s=${inputValue}`)
.then(response => response.json())
.then(data=> {
console.log('API Response:', data); // Add this line to log the API response
const items = document.getElementById("items");
items.innerHTML = "";
if(data.meals == null){
document.getElementById("msg").style.display = "block";
} else {
document.getElementById("msg").style.display = "none";
data.meals.forEach(meal =>{
itemDiv = document.createElement("div");
itemDiv.className = "m-2 singleItem";
itemDiv.setAttribute('onclick' , `details('${meal.idMeal}')`);
let itemInfo = `
<div class="card " style="width: 12rem;">
<img src="${meal.strMealThumb}" class="card-img-top" alt="...">
<div class="card-body text-center">
<h5 class="card-text">${meal.strMeal}</h5>
</div>
</div>
`;
itemDiv.innerHTML = itemInfo;
items.appendChild(itemDiv);
});
}
})
.catch(error => {
console.error('Error fetching API:', error); // Log any errors
});
});
function details(id){
fetch(`https://www.themealdb.com/api/json/v1/1/lookup.php?i=${id}`)
.then(res=>res.json())
.then(detail => {
let meal = detail.meals[0];
console.log(meal);
let details = document.getElementById("details");
details.innerHTML = "";
let detailsDiv = document.createElement("div");
let detailsInfo = `
<div class="card " style="width: 19rem;">
<img src="${meal.strMealThumb}" class="card-img-top" alt="...">
<div class="card-body ">
<h3 class="card-text">${meal.strMeal}</h3>
<h6>Ingredients</h6>
<ul>
<li>${meal.strArea}</li>
<li>${meal.strCategory}</li>
<li>${meal.strIngredient1}</li>
<li>${meal.strIngredient2}</li>
<li>${meal.strIngredient3}</li>
<li>${meal.strIngredient4}</li>
<li>${meal.strIngredient5}</li>
</ul>
</div>
</div>
`;
detailsDiv.innerHTML = detailsInfo;
details.appendChild(detailsDiv);
});
}