JavaScript Adding an ID attribute to another created Element

JavascriptHtmlFunctionDomSetattribute

Javascript Problem Overview


I have some code here that will do the following. The code creates an element "p" then I append it to a "div" in the HTML. I would like that "p" I just created have an unique identifier (ID) and set the name of the ID. So later on when the user wants to delete the last created element it will be able to get the ID so it can removeChild. Here is the code:

JavaScript:

  var $ = function (id)
  {
      return document.getElementById(id);
  }

  function ShowResponse ()
  {
  var myResponse = $("myresponse").value;

  var myPara = document.createElement("p");
  var myDiv = $("mydiv");
  myDiv.appendChild(myPara);

  var myID = document.createElement("id");
  myID.setAttribute("value", ID)

  var myText = document.createTextNode(myResponse);
  myPara.appendChild(myText);
  }

  function RemoveResponse ()
  {

  }

  window.onload = function ()
  {
      $("showresponse").onclick = ShowResponse;
      $("removeresponse").onclick = RemoveResponse;
  }

HTML:

  <body>
  <div id="mydiv">
  <h1>Practice</h1>

  <p>Hi There</p>
  <p>How are you?</p>

  <p>
<input type="text" id="myresponse">
<br><input type="button" id="showresponse" value="Show Response">
<input type="button" id="removeresponse" value="Remove Response">
  </p>

  <hr>
 </div>

 </body>

Javascript Solutions


Solution 1 - Javascript

Since id is an attribute don't create an id element, just do this:

myPara.setAttribute("id", "id_you_like");

Solution 2 - Javascript

You set an element's id by setting its corresponding property:

myPara.id = ID;

Solution 3 - Javascript

You can use dot notation.

myPara.id = 'anyNameYouLike'; 

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionking_sw4View Question on Stackoverflow
Solution 1 - JavascriptJohann EchavarriaView Answer on Stackoverflow
Solution 2 - JavascriptJa͢ckView Answer on Stackoverflow
Solution 3 - JavascriptfruitloafView Answer on Stackoverflow