嗨我有一個函數來增加一個textarea的行數,當用戶鍵入它,所以它工作正常。但是,當表單將文本帶入textarea時,由於用戶未輸入內容,因此它不會增加行數,但它只顯示開始時定義的行數(rows =「1」),因爲我需要它是最小的行數。根據內容指定textarea的行數。 HTML,Javascript
我不知道用什麼Javascript(沒有JQuery)函數來應用到textarea,所以它會擴大行數,當用戶輸入時,以及當表單顯示多行文本到textarea時,所以它將始終使用最少量的行。
任何幫助,將不勝感激。
請完全免費更改功能。
例如。
<script type="text/javascript">
function changeTextAreaLength(e){
var txtLength = e.value.length;
var numRows = 0 ;
var arrNewLines = e.value.split("\n");
for(var i=0; i<=arrNewLines.length-1; i++){
numRows++;
if(arrNewLines[i].length > e.cols-5) {
numRows += Math.floor(arrNewLines[i].length/e.cols)
}
}
if(numRows < 1) {
e.cols = (txtLength % e.cols) + 1 >= e.cols ? ((txtLength % e.cols) + 1) : e.cols ;
}else{
e.cols = e.cols ;
e.rows = numRows;
}
}
</script>
<textarea id="textarea1" rows="1" onkeyup="javascript:changeTextAreaLength(this);" />
您的代碼載入錯誤;改正'fucntion'錯字,並將你的函數參數'obj'改爲'e',並改變函數的名字以匹配'onkeyup'中的調用。 – meagar 2010-02-05 16:47:36
謝謝,那已經是正確的了,我做得很快我沒有意識到。 – Amra 2010-02-05 16:50:51