2010-01-06 82 views
1

我正在使用以下代碼,通過觸摸按鈕來動態添加具有文本字段的行。我遇到的問題是在這些行中創建的文本字段不是我想要的大小。有沒有辦法在這種情況下指定文本字段的長度?document.createElement文本字段長度

function addNewRow() 
{ 
    var iX = document.getElementById("txtIndex").value; 
    iX ++; 
    document.getElementById("txtIndex").value = iX; 

    var tbl = document.getElementById("tblDetail").getElementsByTagName("TBODY")[0]; 
    var tr = document.createElement("TR"); 
    tbl.appendChild(tr); 

     //Text Field: txtOffsetDateCleared1 
    var tdOffsetDateCleared = document.createElement("TD"); 
    tr.appendChild(tdOffsetDateCleared); 

    var p = document.createElement("P"); 
    tdOffsetDateCleared.appendChild(p); 

    var txtOffsetDateCleared = document.createElement("input"); 
    p.appendChild(txtOffsetDateCleared); 

    txtOffsetDateCleared.id = "txtOffsetDateCleared" + iX; 

    var txtOffsetDateCleared1 = document.getElementById("txtOffsetDateCleared1"); 
    var i = 0; 

    for (i = 0; i < txtOffsetDateCleared1.children.length; i++) 
     { 
      var opt = document.createElement("option"); 
      opt.value = txtOffsetDateCleared1 [i].value; 
      opt.innerText = txtOffsetDateCleared1 [i].innerText; 
      txtOffsetDateCleared.appendChild(opt); 
     } 
} 

回答

2

您可以設置width CSS屬性或size HTML屬性:

txtOffsetDateCleared.setAttribute('size',10); // HTML attribute 
txtOffsetDateCleared.style.width = '200px'; // CSS property 

我推薦的CSS屬性而不是HTML屬性,因爲後者需要指定寬度的顯示的金額文本框內的字符。該CSS屬性將設置元素的寬度精確的

+0

這很好。謝謝! – SeanFlynn 2010-01-08 22:04:55