выделение текста в textbox

 
0
 
JavaScript
ava
kizune | 23.07.2007, 15:00
здравствуйте. smile
можно ли как-то совместить


<asp:TextBox runat="server" onclick="javascript:select()" ID="selectText" TextMode="MultiLine"> </asp:TextBox>


и


function select()
{
document.getElementById("selectText").focus();
document.getElementById("selectText").select();
}


дабы выделить текст в textbox?

Comments (2)
ava
Mymik | 23.07.2007, 16:24 #
kizune, ошибка возникает из-за того что ID на стороне сервера и на стороне клиента это разные вещи.
Потому в JS нужно написать

function select()
{
document.getElementById("<%=selectText.ClientID%>").focus();
document.getElementById("<%=selectText.ClientID%>").select();
}

Но, ИМХО это не удобно, потому лучше переделать это все и написать

<asp:TextBox runat="server" onclick="select(this)" ID="selectText" TextMode="MultiLine"> </asp:TextBox>


function select(obj)
{
obj.focus();
obj.select();
}

Получается, что this это указатель на тот объект из которого вызвали этот скрипт. Псевдокласс javascript: удаляем, потому как он там не нужен из-за того что он используется только для href. дабы указать, что это в href содержится скрипт, а не url.

Но мы не остановимся на этом и пойдем еще дальше, потом как кода слишком мало, то лучше запускать все это сразу в TextBox

<asp:TextBox runat="server" onclick="this.focus();this.select();" ID="selectText" TextMode="MultiLine"> </asp:TextBox>

Это будет самый компактный и удобный способ.
ava
kizune | 24.07.2007, 08:54 #
и здесь большое спасибо smile
Please register or login to write.
Firm of day
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Contributors
  Mymik   kizune
advanced
Submit