2012-03-19 66 views
0

我是asp.net初学者,我正在开发一个网站,我想根据需要动态添加或删除文本框(单击超链接的事件)。在提交按钮上,我想要计算创建的文本框的数量,检索它们的值并将这些数据转储到数据库中。从asp.net中的动态添加文本框中获取值

我用下面的Java脚本添加textboxes--

function addTxtBx() 
{ 
     var txtBxHolder = document.getElementById('MyDiv'); 
     var txtdiv = document.createElement('div'); 
     txtdiv.setAttribute("id", "MyD1"); 
     var newTxtBx1 = document.createElement('input'); 

     newTxtBx1.type = 'text'; 


     newTxtBx1.setAttribute("id", "MyText1"); 



     txtdiv.appendChild(newTxtBx1); 


     txtBxHolder.appendChild(txtdiv); 

} 

function removeTxtBx() 
{ 
     var allTxtBxs = document.getElementById('MyDiv').getElementsByTagName('div'); 
     if (allTxtBxs.length == 0) 
     { 
      alert('there are no text boxes to remove'); 
     } 
     else 
     { 
      document.getElementById('MyDiv').removeChild(allTxtBxs[allTxtBxs.length -  1]); 

     } 
} 

并访问下面的按钮代码使用的值单击

TextBox textbox = (TextBox)Page.FindControl("MyText1"); 
string val = textbox.Text; 

但它无法正常工作。 我做错了什么? 在此先感谢..

回答

0

价值为宗旨,当您指定的名称测试框

txtdiv.setAttribute("name", "dynamictextfield"); 

现在把它拿来作为

<script type="text/javascript"> 

    function getValues(objName) 
    { 
     var arr = new Array(); 
     arr = document.getElementsByName(objName); 

     alert("total objects with name \"dynamictextfield\" = \n" + arr.length); 

     for(var i = 0; i < arr.length; i++) 
     { 
      var obj = document.getElementsByName(objName).item(i); 
      alert(obj.id + " = " + obj.value); 
     } 
    } 

    </script> 

参考http://www.ezineasp.net/post/Javascript-getElementsByName-Example.aspx

相关问题