1
我有一個RadTextBox:的JavaScript字符串替換和後回RadTextBox上的粘貼
<telerik:RadTextBox ID="txtBox" TextMode="MultiLine" Width="635px" TabIndex="2" Rows="6" runat="server" onpaste="JavaScript:return RestrictCopyPaste();"></telerik:RadTextBox>
調用下面的JavaScript函數,當它粘貼到文本框:
function RestrictCopyPaste() {
var txt = clipboardData.getData('Text')
txt = txt.replace("[^\u0000-\u007F]", "");
document.getElementById("<%= txtBox.ClientID%>").value = txt
}
我想替換每個字符在那個正則表達式代碼中有一個空白字符串。這樣做的目的是刪除粘貼上的所有非ASCII字符。目前,當我複製並粘貼到文本框中時,它只是複製了我正在粘貼的內容。
任何想法如何讓這個工作?
使用雙反斜線。 –
@WiktorStribiżew添加雙反斜槓的目的是什麼?你的意思是? [^ \\ u0000 - \ u007F]。我得到了同樣的結果。 – user2461876
那麼,「[^ \ u0000- \ u007F]」被傳遞給RegExp的構造函數,因此反斜槓變成了兩倍。或者使用正則表達式:'txt = txt.replace(/ [^ \ x00- \ x7F] /,「」);'如果不起作用,請檢查'clipboard.getData'部分代碼。我發現它在Chrome中不起作用,並在IE中運行。 –