Jak w temacie, chciałabym zarekomendować stronę, przy pomocy, której można testować lub uczyć się pisania kodu "Ajax-owego".
{JSON} Placeholder
Free fake API for testing and prototyping.
Przykład:
<label for="users">Ajax lista autocomplete</label>
<input type="text" id="users" name="users">
input {
padding: 0.5em 1em;
width: 20%;
}
label {
display: block;
font-weight: bold;
margin-bottom: 0.25em;
padding: 0.25em 0.5em;
width: 100%;
}
window.onload = () => {
fetch('https://jsonplaceholder.typicode.com/users/')
.then(function(response) {
if (response.ok)
return response.json();
throw response;
})
.then(function(data) {
if (data.length > 0)
dataList(data);
})
.catch(function(error) {
console.warn(error);
});
}
function dataList(data) {
const users = document.querySelector('#users');
const datalist = document.createElement('datalist');
datalist.id = 'users-list';
users.setAttribute('list', datalist.id);
const fragment = document.createDocumentFragment();
for (let user of data) {
const option = document.createElement('option');
option.textContent = user.name;
fragment.append(option);
//console.log(user);
}
datalist.append(fragment);
users.after(datalist);
}