In dem du ein Listenelement erzeugst, und dann das Input dort hineinhängst.
Das ist ja klar! aber eben wie?
Genauso wie du auch input Elemente erzeugst :)
Kann ich das in einem rutsch mit erledigen? oder muss ich jedem Listenelement auch eine id zuweisen um es für den Eintrag des zugehörigen Inputfeldes identifizieren zu können?
Nein du kannst ein Listenelement erzeugen und dieses noch nicht ins DOM einhängen, in dieses "in der Luft schwirrende" li-Element hängst du dein input-Element ein und dann fügst du das fertige Konstrukt ins DOM ein.
Etwa so:
var li = document.createElement('li');
var input = document.createElement('input');
li.appendChild(li);
document.getElementById('foo').appendChild(li);