2011-12-08 17 views
0

私はfacebookのようなautoexpandingテキストボックスを必要としています。私はそれのためのコードを持っていますが、何らかの理由でそれは完全に正しく動作していません。それはテキストボックスを更新してそれを拡張していますが、それはあまりにも早くそれをやっています。私はそれが線の終わりになると、それが拡大したいと思っています。しかし、それは20文字が入力された後にそれをやっている!私は試みた2つの異なる方法を持っています、彼らはどちらも同じことをします。私のコードを変更するための提案?入力中のテキストボックスの自動拡張

function sz(t) { 
    var therows = 0 
    var thetext = document.getElementById(t.id).value; 
    var newtext = thetext.split("\n"); 
    therows += newtext.length 

    document.getElementById(t.id).rows = therows; 
    return false; 
    } 



    function sz(t) 
{ 
    a = t.value.split('\n'); 
    b = 1; 

    for (x = 0; x < a.length; x++) 
    { 
     if (a[x].length >= t.cols) 
     { 
      b += Math.floor(a[x].length/t.cols); 
     } 
    } 

    b += a.length; 

    if (b > t.rows) 
    { 
     t.rows = b; 
    } 
} 

答えて

0

私はあなたの問題はtxtbox.idを使用してだけではなく、IDを渡していたと思い、このfiddle.

をチェックしてください。

+0

私はidを渡すことができません。 IDとtxtboxを正しく取得しているように見えるので、それは違いがあるとは思わない。 –

+0

あなたは私の答えの中のリンクを訪問したことがありますか? –

+0

asp.net codebehindからtextbox.UniqueIDで渡します。 – paparush

関連する問題