Sai Puri
Sai Puri

Reputation: 1

dynamic textbox are not store in the textbox

i m creating dynamic text box on onclick event the code is running properly text box are created but the problem is when i create new text box and fill the some value on the first text values are store properly and again create the new text box that time first text box value are automatically delete or null i m trying to solve this error but not getting answer properly please help me....

<html>
<head>
<title>Dynamic Form</title>
<script language="javascript" type="text/javascript" >
function changeIt()
{

createTextbox.innerHTML = createTextbox.innerHTML +"<br><input type='text' name='mytext' >"

}
</script>
</head>
<body>

<form name="form">
<input type="button" value="clickHere" onClick="changeIt()">
<div id="createTextbox"></div>
</form> 
</body>
</html>

Upvotes: 0

Views: 290

Answers (4)

Naveen Kumar Alone
Naveen Kumar Alone

Reputation: 7668

<!DOCTYPE html>
<html>
<head>
<script>
function changeLink()
{
document.getElementById('createTB').innerHTML="<input type='text' />";
}
</script>
</head>
<body>

<div id="createTB"></div>
<input type="button" onclick="changeLink()" value="Change link">

</body>
</html> 

Upvotes: 0

Maulik patel
Maulik patel

Reputation: 1601

Please try this,

 <script type="text/javascript" language="javascript">
        function changeIt() {
            var divTag = document.createElement("input");
            document.body.appendChild(divTag);
        }
    </script>

<input type="button" value="Create"
        onclick="changeIt();" />

Upvotes: 1

fmodos
fmodos

Reputation: 4568

By using createTextbox.innerHTML =, you replace the current content of the div.

Use the appendChild function to solve it, here is one example:

function addInput(){
        //get the div element
        var d = document.getElementById('myDiv');
        //create an input element
        var i = document.createElement("input");
        //add it to the div
        d.appendChild(i);
    }

Upvotes: 0

mohkhan
mohkhan

Reputation: 12315

createTextbox is not explicitly available. You'll have to get it by using document.getElementById. Like this...

var createTextbox = document.getElementById("createTextbox");
createTextbox.innerHTML = createTextbox.innerHTML +"<br><input type='text' name='mytext' >";

Upvotes: 0

Related Questions