2012-03-19 86 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

相關問題