【问题标题】:Cursor in textbox goes to wherever I click文本框中的光标转到我单击的任何位置
【发布时间】:2014-03-20 22:05:59
【问题描述】:

在 ASP.NET 中的站点上工作,我有一个文本框,如果我单击文本框的中间,当文本框获得焦点时,如果我从左侧单击 1/4,则光标位于中间, 聚焦时光标从左侧移到 1/4。

我只是在这个特定的文本框上遇到了这个问题,我页面上的所有其他文本框都按预期运行(即,无论您单击何处,光标都默认位于文本字段的开头)。奇怪的是所有文本框的定义都是一样的。这个唯一突出的是它是页面上的最后一个文本框。

有什么想法吗?

页面上没有 javascript,但如果这是唯一的方法,我可以使用它。

【问题讨论】:

  • 这是 MVC 1, 2, 3, 4 , WebForms, Razor 视图吗?另外,您是拖放控件文本框还是什么?

标签: c# javascript html asp.net


【解决方案1】:

由于此处缺乏信息,我将进行有根据的猜测。我假设您使用的是 asp.net Webforms。

Webforms Textbox Control

无论你在哪里点击,光标都默认在文本框的开头

这是因为当 Textbox 没有文本(包括空格)时,开头是索引 0。

我认为导致您的问题是在最后一个 Textbox 控件上输入了空格;转到Textbox 控件的属性并在Text 属性下单击它,然后按CTRL-A 选择所有字符(包括空格),然后按DEL 将它们全部删除(如果有)。

【讨论】:

  • 是的,就是这样,问题是数据进入数据库时​​带有空格。我在检索数据后刚刚做了一个string.Trim(),这解决了这个问题。
  • @m1Lb4nKs 您是否将数据库表字段定义为nchar?如果是这样,那可能就是问题所在。如果您不使用 unicode,请将 nchar 替换为 varchar 并从您的代码中删除 trim
猜你喜欢
  • 1970-01-01
  • 2019-09-07
  • 2023-03-02
  • 2010-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多