Как менять значение value при вводе текста в input?
Здесь есть поле ввода, которое должно получать value из того, что в него введено. Сейчас по умолчанию там одно значение, при изменении текста инпута - как менять автоматически value?
Чтобы новый value элемента отображался в DOM или что? Если так, то зачем это надо? То, что будет вводится в этот input это и будет его value. Вопрос вообще непонятен если честно :)
Мне нужно, чтобы по кнопку Получить стату - у меня бралось значение этого инпута gamertag и добавлялось к параметру запроса массива settings - и далее по сформированному URL подргружалась инфа. Сейчас подгружается одно значение value вне зависимости от того, ввожу я новое или нет
Alex Goncharov, потому что вы получаете value только при загрузке страницы один раз. И каждый запрос значение переменной остается неизменным. Вам нужно получать value внутри AJAX-запроса или внутри функции getStats():
//Запрашиваем статистику
function getStats(){
$.ajax(settings).done(function (response) {
//Переменные для запроса
let apiUrl = $("#apiUrl").val();
let gamertag = escape($("#gamertag").val());
let platform = $("input[name='platform']:checked").val();
console.log(gamertag);
//Параметры запроса
let settings = {
"async": true,
"crossDomain": true,
"url": apiUrl + gamertag + '/' + platform,
"method": "GET",
"headers": {
"x-rapidapi-host": "call-of-duty-modern-warfare.p.rapidapi.com",
"x-rapidapi-key": "49612a1b8bmsh9cd817dc9f00608p1bce8cjsn1635a0626299"
}
}
//Отображаем по какому URL получаем данные
let settingsURL = settings['url'];
console.log('URL запроса:' + settingsURL);
//Объект в переменную
let json = response;
.....
Вы берете значение инпута только при первой загрузке страницы, сохраняете его в переменную и на каждый клик кнопки отправляете старые данные. Вам нужно заново получать новое значение перед каждой отправкой запроса.