Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript DOM Scripting By Example Improving the Application Code Next Steps

Brian McLaren
Brian McLaren
17,632 Points

Form validation rejecting name duplicates

I want to reject duplicate names from being added to the list or being appended to the dom.
form.addEventListener('submit', (e) => {
  const text = input.value;
  input.value = '';
  if (input.value) {
      alert('Please submit an entry');
    }
  else if (text !== text) {
    function removeDuplicates(text, prop) {
      return text.filter((obj, pos, arr) => {
      return arr.map(mapObj => mapObj[prop]).indexOf(obj[prop]) === pos;
  });
}
  } else {

      const li = createLI(text);
      ul.appendChild(li);
      e.preventDefault();
  }
});

1 Answer

Anjolaoluwa Akinremi
Anjolaoluwa Akinremi
8,532 Points

form.addEventListener('submit', (e) => { //Preventing the browser's default behavior of submitting the form e.preventDefault();

//Storing the input value into a variable
const text = input.value;

if(input.value == ''){
  alert('Empty Name');
  return false;
}

//Resetting the input textbox to blank after submitting the form
input.value = '';



const li = createLI(text);
ul.appendChild(li);

});

Compare this to your code for filtering empty submissions