在asp.net中查找文本框光标位置、行号和列号
本文关键字:位置 光标 net asp 查找 文本 | 更新日期: 2023-09-27 18:20:25
我是web应用程序开发的初学者。我有一个windows应用程序的代码。我必须将相同的功能转换为web应用程序。我有一个文本框控件。我正在将一些文本加载到该文本框中。我想找到当前的光标位置,行号和列号。windows应用程序的代码如下:
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = @"This is a demo for text box control
I am trying to find the cursor position ,
line no and column no
of the cursor.";
}
private void textBox1_Click(object sender, EventArgs e)
{
textBox1.SelectionStart++;
label2.Text = textBox1.SelectionStart.ToString();
int i = textBox1.GetLineFromCharIndex(textBox1.SelectionStart);
label3.Text = i.ToString();
int j =textBox1.SelectionStart - textBox1. GetFirstCharIndexFromLine(i);
label4.Text = j.ToString();
}
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if ((e.KeyCode == Keys.Up) || (e.KeyCode == Keys.Right) ||
(e.KeyCode == Keys.Left) || (e.KeyCode == Keys.Down))
{
textBox1.SelectionStart++;
label2.Text = textBox1.SelectionStart.ToString();
int i = textBox1.GetLineFromCharIndex(textBox1.SelectionStart);
label3.Text = i.ToString();
int j = textBox1.SelectionStart -
textBox1.GetFirstCharIndexFromLine(i);
label4.Text = j.ToString();
}
}
作为本文中公认的答案,您必须使用javascript在clinet端获取SelectionStart和SelectionEnd。然后,将结果(可能使用隐藏的输入值)发布到服务器,并重置数据:
如何使用javascript 从文本框控件中获取选定文本