В моем текущем проекте у меня есть текстовое поле, в котором пользователь вводит некоторый числовой идентификатор (например, идентификатор продукта) - например: 12345-123-1234567-12345
.Функция автоматического форматирования CRTL + V (Paste) в JavaScript asp.net
Я хочу иметь JavaScript в моей странице ASPX, что, когда пользователь нажимает Ctrl + V, чтобы вставить в текст, будет форматировать этот текст, независимо от нынешнего формата текста.
Например, если текст отформатирован как 12345---123-123456712345
, тогда функция будет отформатировать его до 12345-123-1234567-12345
.
EDIT:
Попробовал ваш Suggetion, но это не работает. Я попытался, как таким образом ... ниже пример кода
<asp:TextBox ID="TextBox1" runat="server" Text="" ></asp:TextBox>
<br />
<br />
<script language="JavaScript" type="text/javascript">
var tb = document.getElementById("TextBox1");
tb.OnTextChanged = function() {
this.value = this.value.replace("---", "-");
};
</script>
Это erroring, говоря
Microsoft JScript runtime error: Unable to set value of the property 'OnTextChanged': object is null or undefined
Беглый регулярное выражение может справиться с этим, "[^ (0-9)]". Замените все их на "". Если вам нужны тире между ними, вы можете повторить их и добавить после этого – annonymously
замена/добавление тире не имеет большого значения ... Мне просто интересно, как я захвачу CRTL + V в javascript. как сказал я довольно новый для JS ... не очень уверен. можете ли вы разместить edxample .... если у вас есть. – Rahul