obj[id] = {}; делать? Это блин вообще нигде не написано. + ко всему в php без проблем работает и без объявления id
о боги, сколько экспрессии )) Нет у вас выхода другого просто напросто. Что вы хотите - это только хотелки. Вот было в поле слово СТРОКА, ввёл я в поле СТРОКА1, а потом 1 убрал. Соответственно input отработает, но состояние поля было изменено, а содержимое по факту осталось тем же.
item.addEventListener('input', function() {.
да где здесь два-то?)))))

просто попробуй сделать
все твои страдания от умозрительности
как только начнешь делать первый вариант, все вопросы отпадут
let api = '<?=$_SESSION['api']?>';У тебя же гениальная структура, с единым индексом
<!DOCTYPE html>
<html lang="ru">
...
<? foreach ($result as $v): ?>
я ей предложил вариант, то чем реализовать аякс не важно будет это JQ, фетч или какой-нить ещё фрэеймворк - не суть, я предложил лишь алгоритм
<? foreach ($result as $v): ?>

Эти строки вызовут ошибку: