Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Inserting text into textbox at cursor position

Posted on 2009-05-13
4
Medium Priority
?
1,092 Views
Last Modified: 2013-11-08
In the simplest terms I have a button and a multiline textbox on my asp.net page. I type data into the textbox and when I click a button I need it to insert text at the cursor position.

This is also within an updatepanel. Is this possible?
0
Comment
Question by:syinner
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
4 Comments
 
LVL 10

Expert Comment

by:MaxOvrdrv2
ID: 24374787
can you use client-side script (JavaScript) or you are limited to server-side?
0
 

Author Comment

by:syinner
ID: 24374838
i got no problem using client side however this is within a control that is part of a content page... i have had problems with client side javascript when this is combined with an updatepanel.

i would like the server side to make the decision what needs to inserted through.
0
 
LVL 10

Accepted Solution

by:
MaxOvrdrv2 earned 1500 total points
ID: 24374912
the problem is that you cannot get the current cursor location from a textbox using server-side code... unless you are certain that the location will be either the beginning, or end of the text entered...  here's the JavaScript way of inserting text at the cursor location... this also gives you a selected text if you need it... use @pos@ var for current position:
function InsertAtLocation()
{
  var ctrl = 
 document.getElementById("<%=Me.TextBoxName.ClientID%>");
  var saveText = ctrl.value;
  ctrl.focus();
  var range = document.selection.createRange();
  var specialchar = String.fromCharCode(1);
  range.text = specialchar;
  var pos = ctrl.value.indexOf(specialchar);
  ctrl.value = saveText;
  range = ctrl.createTextRange();
  range.move('character', pos);
  range.select();
  range.text = "INSERT YOUR TEXT HERE, USING <%=%> IF NEEDED"
  document.getElementById("txtTargetText").focus();
  window.event.returnValue = false;
}

Open in new window

0
 
LVL 10

Expert Comment

by:MaxOvrdrv2
ID: 24374921
something like that anyway... for mine here i'm copying text from one text box to another... but you get the idea from the code anyway.
0

Featured Post

Quick Cloud Training

Looking for some quick training on the cloud in 2 hours or less? Check out these how-to guides in AWS, Linux, OpenStack, Azure, and more!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Many of us here at EE write code. Many of us write exceptional code; just as many of us write exception-prone code. As we all should know, exceptions are a mechanism for handling errors which are typically out of our control. From database errors, t…
It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…

664 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question