this is my coding. in this coding i want to print table in innerHTML in
paragraph tag.This is working but the problem is when i click submit button this result show only last value like this "10*10=100" but i want to run full loop which i define in code from 1 till 10. Please solve this issue.
<html>
<head>
<title>Table Program</title>
</head>
<body>
<input type="text" id="table" placeholder="Enter table"/>
<input type="button" value="Submit" onClick="table()"/>
<p id="demo"></p>
<!----------------------------------------------------------------------------------------------->
<script type="text/javascript">
function table()
{
var value = document.getElementById("table").value;
var demop = document.getElementById("demo");
var a;
for(a=1; a <= 10;++a)
{
demop.innerHTML=(value+"*"+ a +"="+ value*a);
}
}
</script>
</body>
</html>
this is my coding. in this coding i want to print table in innerHTML in
paragraph tag.This is working but the problem is when i click submit button this result show only last value like this "10*10=100" but i want to run full loop which i define in code from 1 till 10. Please solve this issue.
<html>
<head>
<title>Table Program</title>
</head>
<body>
<input type="text" id="table" placeholder="Enter table"/>
<input type="button" value="Submit" onClick="table()"/>
<p id="demo"></p>
<!----------------------------------------------------------------------------------------------->
<script type="text/javascript">
function table()
{
var value = document.getElementById("table").value;
var demop = document.getElementById("demo");
var a;
for(a=1; a <= 10;++a)
{
demop.innerHTML=(value+"*"+ a +"="+ value*a);
}
}
</script>
</body>
</html>
Share
Improve this question
edited Oct 21, 2012 at 18:27
Alessandro Minoccheri
36k22 gold badges127 silver badges176 bronze badges
asked Oct 21, 2012 at 9:49
Mufasil Muhammad IqbalMufasil Muhammad Iqbal
831 gold badge1 silver badge7 bronze badges
2 Answers
Reset to default 13Your for
loop is overwriting the innerHTML of demop
each time it is executing.
So when your for
loop reaches last iteration a
will be 10 and hence you only get the last value "10*10=100"
So you should append the result every time you iterate your for loop just make it like this
demop.innerHTML += (value + "*" + a + "=" + (value*a) + "<br />");
So you will get your output on seperate lines.
When you call demop.innerHTML = something
you overwrite it each time.
You should either:
- Put the entire string in a temporary
result
variable and then give it toinnerHTML
Concatenate the different results by doing
demop.innerHTML = demop.innerHTML + (value+"*"+ a +"="+ value*a);