我有一个文本框,点击后我希望文字突出显示:
<asp:TextBox ID="searchInput" runat="server" ></asp:TextBox>
我正在尝试通过C#添加功能:
protected void Page_Load(object sender, EventArgs e)
{
searchInput.Attributes.Add("onfocus", "javascript:this.select();");
}
然而,我没有得到理想的结果。单击该框时文本不突出显示。我做错了什么,如何解决?
编辑:
澄清我想要选择的文字。
答案 0 :(得分:2)
当您单击该框时,您可能会改变插入位置,从而改变文本选择范围。
试试这个:
protected void Page_Load(object sender, EventArgs e)
{
searchInput.Attributes.Add("onfocus", "var elem=this;setTimeout(function(){elem.select();},0);");
}
通过setTimeout()
强制等待,您可以在原始焦点事件触发后select()
文本,并将选择范围设置回文本value
。
答案 1 :(得分:0)
我总是通过将BackColor更改为黄色来突出显示。你可以尝试它应该工作。
答案 2 :(得分:0)
您应该尝试以下代码:
<asp:TextBox ID="searchInput" runat="server" OnFocus="this.style.borderColor='red'" OnBlur="this.style.borderColor=''"></asp:TextBox>