Ich habe ein Formular, und ich möchte das Eingabefeld jedes Mal löschen, wenn ich die Übergabeschaltfläche (Plus) eingebe.So löschen Sie das Eingabefeld, nachdem Sie auf "Senden" geklickt haben
Ich habe versucht, dies zu verwenden, es funktioniert nicht. Ich kann es an der falschen Stelle implementieren.
document.getElementById('add-item').value='';
Mein Javascript-Code ist unten.
window.addEventListener('load', function(){
// Add event listeners
document.getElementById('add-item').addEventListener('click', addItem, false);
document.querySelector('.todo-list').addEventListener('click', toggleCompleted, false);
document.querySelector('.todo-list').addEventListener('click', removeItem, false);
function toggleCompleted(event) {
console.log('=' + event.target.className);
if(event.target.className.indexOf('todo-item') < 0) {
return;
}
console.log(event.target.className.indexOf('completed'));
if(event.target.className.indexOf('completed') > -1) {
console.log(' ' + event.target.className);
event.target.className = event.target.className.replace(' completed', '');
document.getElementById('add-item').value='';
} else {
console.log('-' + event.target.className);
event.target.className += ' completed';
}
}
function addItem() {
var list = document.querySelector('ul.todo-list');
var newItem = document.getElementById('new-item-text').value;
var newListItem = document.createElement('li');
newListItem.className = 'todo-item';
newListItem.innerHTML = newItem + '<span class="remove"></span>';
list.insertBefore(newListItem, document.querySelector('.todo-new'));
}
function removeItem(event) {
if(event.target.className.indexOf('remove') < 0) {
return;
}
var el = event.target.parentNode;
el.parentNode.removeChild(el);
}
});
Möchten Sie das Element nur mit 'add-item' id löschen? –
@ JF-Mechs ja, ich möchte das Eingabefeld entfernen, wo Sie das Element hinzufügen können. – Nick
Fügen Sie Autocomplete = "off" zu Ihrem Formular-Tag möglicherweise auch nützlich sein –