0

我有一个文本框,单击时我希望文本突出显示:

<asp:TextBox ID="searchInput" runat="server" ></asp:TextBox>

我正在尝试通过 C# 添加功能:

protected void Page_Load(object sender, EventArgs e)
{
    searchInput.Attributes.Add("onfocus", "javascript:this.select();");
}

然而,我没有得到想要的结果。当我单击该框时,文本未突出显示。我做错了什么,我该如何解决?

编辑:

为了澄清我想要选择的文本。

4

3 回答 3

3

当您单击该框时,您可能会更改插入符号的位置,从而更改文本选择范围。

尝试这个:

protected void Page_Load(object sender, EventArgs e)
{
    searchInput.Attributes.Add("onfocus", "var elem=this;setTimeout(function(){elem.select();},0);");
}

通过在本机焦点事件触发后强制等待文本并将setTimeout()选择select()范围设置回文本value

小提琴示例:http: //jsfiddle.net/mxn3F/

于 2013-10-25T19:08:52.703 回答
0

我总是通过将 BackColor 更改为黄色来突出显示。您可以尝试它应该可以工作。

于 2013-10-25T19:04:34.340 回答
0

您应该尝试以下代码:

<asp:TextBox ID="searchInput" runat="server"  OnFocus="this.style.borderColor='red'" OnBlur="this.style.borderColor=''"></asp:TextBox>
于 2013-10-25T19:20:30.853 回答