看看这个:
http://jsfiddle.net/Eb4U7/
我已经更改为keyup事件,但也添加了在您单击链接后计算行数的命令,否则它只会在您编辑文本区域中的内容时更新计数。
<script type='text/javascript'>
window.onload=btnsInit;
function btnsInit() {
var i,a=document.getElementById('btns').getElementsByTagName('a');
for(i=0;i < a.length;++i) {
a[i].onclick=btnClick;
}
}
function btnClick(e) {
document.getElementById('myTextarea').value += '' + this.firstChild.nodeValue + '\n';
xPreventDefault(e);
cuentaRenglones(document.getElementById('myTextarea'));
trim();
console.log("#myTextarea =", document.getElementById('myTextarea').value);
return false;
}
function xPreventDefault(e) {
if(e && e.preventDefault)e.preventDefault();
else if(window.event)window.event.returnValue=false;
}
function cuentaRenglones(area){
var renglones = area.value.replace((new RegExp(".{"+area.cols+"}","g")),"\n").split("\n");
if(renglones[renglones.length-1]=="") renglones.length--;
area.form.contador.value = renglones.length;
}
</script>
<div id='btns'>
<form>
<textarea rows="10" id='myTextarea' style="" name=" " onkeyup="cuentaRenglones(this)"></textarea>
<br>
Lines:
<input type=text name="contador" size="2" value="0">
</form>
<a onclick='return false'href=' '>Link1</a>
<a onclick='return false' href=' '>Link2</a>
<a onclick='return false' href=' '>Link3</a>
<a onclick='return false' href=' '>Link4</a>
</div>â