I use a form to input some values but I have a one field where the user have right to put unlimited values so I use the dynamic adding javascript to add these fields. Dynamic adding script is working but the fields which is added in the form through javascript having a problem. The fields are adding with the default value of a "$phpvariable" instead of being empty. In dynamic adding I use the attribute value='$phpvariable'. So this is because of value attribute but it must show an empty field becz $phpvariable have no initial value so this field must be empty but its showing this value so can anybody solve my problem please ?? MY JAVASCRIPT IS javascript.js: function AddFields() { var MainDiv = document.getElementById('MoreFunnyImages'); //for getting the element(div) from where to start putting more fields var AddFields = document.getElementById('NoofFunnyImages').value; //for getting number of fields to be added var PreviousNoOfFields = document.getElementById('FunnyImagesCount'); //this is to get the value of field which have saved the number which is given before var NewDivIdName = "divFunnyImage"; //to get the id of div which have to be removed or been added for (j=1;j<=PreviousNoOfFields.value;j++) { //loop is for removing previous given DIVS var OldDiv = document.getElementById(NewDivIdName+j); //getting the name of previous DIVS by help of there ids MainDiv.removeChild(OldDiv); //removing that DIV from the parent DIV } PreviousNoOfFields.value = AddFields; //Now we are assigning new value to the previous value variable so next time this amount of divs will be removed if (AddFields && AddFields > 0) { for (i=1;i<=AddFields;i++) { //for loop continue till the given value becomes equal var NewDiv = document.createElement('div'); //gving that what element to be created, we give DIV NewDiv.setAttribute("id",NewDivIdName+i); //setting id attribute for the div NewDiv.innerHTML = "Alt Tag "+i+":<input type='text' name='alt"+i+"' value='$alt"+i+"' class='field' /><br /><br />"; MainDiv.appendChild(NewDiv); //from where to print these div we give a variable.appendChild function with attribute of newdivname }//loop bracket closes here }//if condition closes here }//function closes here Code (markup): and MY PHP FORM SCRIPT IS form.php: <?php echo "<html> <head> <script src='javascript.js' type='text/javascript'></script> </head> <body> <form name='AddFunnyImages' enctype='multipart/form-data' method='post' action='?action=add'> Number of Images:<input id='NoofFunnyImages' type='text' name='imagesfield' value='$imagesfield' /><input id='FunnyImagesCount' type='hidden' name='countfield' value='0' /> <input type='button' value='Submit' onclick='AddFields()' /> <div id='MoreFunnyImages'></div><!--All of The Images Browse Button Will Display in This DIV--> <input type='submit' name='submit' value='Go..' /> </form> </body> </html>"; ?> PHP:
Possibly because the javascript is within a .JS file and not a PHP file.. just include the javascript with the rest of the php (between <script type='text/javascript'> </script> tags.... ) otherwise the php variable will not be executed by the server and therefore appear as normal text.