在我的解决方案中,有一个ASP.NET ReadOnly文本框。点击它时,会插入闪烁的光标,使用户相信他们可以编辑。
有人可以建议我避免这种情况的最佳方法.. !!!
我尝试了很多方法但没有用。
答案 0 :(得分:1)
以下方法将在texbox获得焦点后立即删除闪烁光标:
<asp:TextBox onFocus="this.blur()"
ID="TextBox1"
runat="server"
ReadOnly="true"
Text="This is a test!">
</asp:TextBox>
在任何TextBox上添加 onFocus =&#34; this.blur()&#34;
此方法使用 HTML DOM Blur() 方法:blur()方法用于从元素中删除焦点。
警告: 使用Blur()可能无法在Internet Explorer 11 下工作..感谢@EdSF观察。
我建议您改用标签,因为这种方式没有闪烁光标或光标,句号!
<asp:Label ID="Label1"
runat="server"
ReadOnly="true"
Text="This is a test!" BorderColor="Black" BorderWidth="1" />
使用 Label 时,您可能需要应用一些CSS才能使其看起来像 TextBox 。您还可以禁用 TextBox。但是,您可能必须应用CSS才能使其不被禁用。
答案 1 :(得分:1)
您是否尝试在文本框中将enabled属性设置为false?它想像:
<asp:Textbox Id="textbox1" runat="server" Enabled="False" Text="Text">
文本将显示在文本框中,您仍然可以突出显示文本,但不能将光标放在框中。如果您希望状态在某个时刻更改为true,则可以从后面的代码中设置enabled属性。