在aspx输入字段中/上插入文本和设置焦点?

我有一个问题是在aspx站点上执行一个javascript函数,该函数应该在TextBox(MultiLine)内容的开头插入一个String,并将Cursor设置在插入的字符串的中间。 它根本就没有在我身边被召唤。

ASPX代码:

 Unbenannte Seite   function setCaretPosition(elemId, caretPos) { var elem = document.getElementById(elemId); if(elem != null) { if(elem.createTextRange) { var range = elem.createTextRange(); range.move('character', caretPos); range.select(); } else { if(elem.selectionStart) { elem.focus(); elem.setSelectionRange(caretPos, caretPos); } else elem.focus(); } } } $("#").click(function(e){ e.preventDefault(); var d = new Date(); var curr_date = d.getDate(); var curr_month = d.getMonth() + 1; var curr_year = d.getFullYear(); var curr_hour = d.getHours(); var curr_minute = d.getMinutes(); var name = "Name"; var wert = curr_date + "." + curr_month + "." + curr_year + " / " + curr_hour + ":" + curr_minute + " / " + name + "\n" + "----------------------------------------" + "\n"; var len = wert.length(); wert = wert + "\n" + "----------------------------------------" + "\n" + "\n"; var input = $("#"); input.val(wert + input.val()); input.val(input.val()); setCaretPosition("",len); });    


插入的String应如何显示:

 13.11.2012 / 13:08 / LightMonk ---------------------------------------- (Position of the Cursor here!) ---------------------------------------- 

我用于此的来源:

http://jsfiddle.net/VP9zT/1/

在html文本框中设置键盘插入位置

更正了Javascript:

  $(document).ready(function(){ $("#").click(function(e){ e.preventDefault(); var d = new Date(); var curr_date = d.getDate(); var curr_month = d.getMonth() + 1; var curr_year = d.getFullYear(); var curr_hour = d.getHours(); var curr_minute = d.getMinutes(); var name = "Name"; var wert = curr_date + "." + curr_month + "." + curr_year + " / " + curr_hour + ":" + curr_minute + " / " + name + "\n" + "----------------------------------------" + "\n"; var len = wert.length; wert = wert + "\n" + "----------------------------------------" + "\n" + "\n"; var input = $("#"); input.val(wert + input.val()); input.val(input.val()); setCaretPosition("",len); }); }); function setCaretPosition(elemId, caretPos) { var elem = document.getElementById(elemId); if(elem != null) { if(elem.createTextRange) { var range = elem.createTextRange(); range.move('character', caretPos); range.select(); } else { if(elem.selectionStart) { elem.focus(); elem.setSelectionRange(caretPos, caretPos); } else elem.focus(); } } }  

首先,您的代码应如下所示,在document.ready()上使用处理程序注册(我删除了asp.net标记) http://jsfiddle.net/rMmwq/

还请注意

  var len = wert.length; 

代替

  var len = wert.length();