JavaScript 字符串替换并回发回粘贴上的 RadTextBox

JavaScript String Replace and post back to RadTextBox on Paste

本文关键字:RadTextBox 字符串 替换 JavaScript      更新时间:2023-09-26

我有一个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 字符。目前,当我复制并粘贴到文本框中时,它只是复制我正在粘贴的内容。

关于如何使其工作的任何想法?

> 您需要使用带有/g修饰符的正则表达式文本:

txt = txt.replace(/[^'u0000-'u007F]/g, "");

否则,您需要使用如下所示的 RegExp 构造函数表示法:

txt = txt.replace(RegExp("[^''u0000-''u007F]", "g"), "");