Showing posts with label cool javascript. Show all posts
Showing posts with label cool javascript. Show all posts

Tuesday, September 8, 2015

Creation of dynamic HTML Part II

In this post, I am about to write about the way of creating dynamic HTML using javascript using a JS function called createElement.

The process is pretty straight forward unlike the other dynamic HTML way where we dump HTML into innerHTML of a dummy tag.

Here we can create new tags entirely without using dummy tags.

Here is the HTML/JS code I've written.


1:  <html>  
2:  <head>  
3:  <script>  
4:  function function1()  
5:  {  
6:       var var1 = document.createElement("center");  
7:       var var2 = document.createElement("p");  
8:       var2.style.color="teal";  
9:       var2.style.fontSize="20px";  
10:       var2.innerHTML = "Dynamic HTML Paragraph";  
11:       var2.id="id1";  
12:       var var3 = document.createElement("button");  
13:       var3.textContent="Click here to delete the dynamic HTML";  
14:       var3.id="id2";  
15:       var3.onclick = function()   
16:       {  
17:            var var4 = confirm("You sure ?");  
18:            if(var4)  
19:            {  
20:                 var var5 = document.getElementById("id1");  
21:                 var5.parentNode.removeChild(var5);  
22:                 var var6 = document.getElementById("id2");  
23:                 var6.parentNode.removeChild(var6);  
24:            }  
25:       };  
26:       var1.appendChild(var2);  
27:       var1.appendChild(var3);  
28:       document.body.appendChild(var1);  
29:  }  
30:  </script>  
31:  </head>  
32:  <body onload="function1(); ">  
33:  <h3>Creation of dynamic HTML using javascript createElement (This is static ofcourse) &#9786</h3>  
34:  </body>  
35:  </html>  

In the above code in line number 33, I have written static HTML code.

In script tag I have written a function and called it onload of body.

In the function in line 4, I have took sort of a parent element "center" tag using createElement as in line 6.

I went ahead and created two more tags "p" and "button" using createElement.

Important part is that we have to attach these two elements to center tag.

I assumed center tag as a parent tag.

In turn I attached this center tag to body as in line 28.

I have also included onclick functionality for the button tag.

On clicking the button you will be asked if you want to delete. If we say Yes, it deletes both the p button tags created dynamically.

I used the code in lines 20-23 for deleting the tags.

I felt this is a very efficient way to create HTML tags in javascript as I am able to control almost everything of the tag in javascript, instead of writing HTML and dumping HTML as a string into innerHTML.

For instance if I wanted to control the color of the tag. I am first creating the element like

var var1 = document.createElement("p");
var1.innerHTML="P tag";
var1.style.color="lime";
var1.style.fontSize="20px";

I figured style's usage is like

we generally use

<p style="color:lime;font-size:20px;"></p>

in javascript this becomes variable.style(attribute).color(property)="lime"(value );

You can paste the above code in a notepad and save it as HTML and try it out on your own.



Happy learning.

Suggestions are very much appreciated.

Comments

blog comments powered by Disqus