Добавить точку с запятой при нажатии клавиши ввода в текстовом поле asp.net - PullRequest
1 голос
/ 05 сентября 2011

как добавить точку с запятой к тексту в текстовом поле asp.net (веб-приложение), при нажатии enter и переместить курсор на следующую строку.

Ответы [ 2 ]

0 голосов
/ 05 сентября 2011

Вот решение с использованием чистого JavaScript.

HTML

<asp:TextBox ID="DemoTextBox" runat="server" 
        CssClass="textarea"
        TextMode="MultiLine"/>

Code Behind (соединение события javascript onclick)

protected void Page_Load(object sender, EventArgs e)
{
    if(!IsPostBack)
    {
        DemoTextBox.Attributes.Add("onkeypress", "AppendSemiColon(this, event)");
    }
}

JavaScript

function AppendSemiColon(objTextBox, evt) {
    if (evt.keyCode == 13) {
        objTextBox.value += ";";
    }
}
0 голосов
/ 05 сентября 2011

Вы можете захватить событие keypress в JavaScript и проверить, каким ключом оно было. Код клавиши для ввода - 13. Поэтому, если они нажмут ввод, добавьте точку с запятой и вернитесь. Как то так:

Редактировать: (более полный пример для включения разметки ASP.NET и т. Д.)

<!-- page headers, other markup, etc. -->
<asp:TextBox ID="txtActiontaken" runat="server" />
<!-- other markup, the rest of the page, etc. -->
<script type="text/javascript">
  $(document).ready(function(){
    $('#<%=txtActiontaken.ClientID%>').keypress(function(e) {
      if(e.keyCode == 13) {
        // append a semi-colon to the control's value
        $('#<%=txtActiontaken.ClientID%>').val($(' <%=txtActiontaken.ClientID%>').val()+';');
      }
      return true;
    });
  });
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...