Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何用Jquery中的其他字符替换每个字符_Javascript_Jquery_String_Replace - Fatal编程技术网

Javascript 如何用Jquery中的其他字符替换每个字符

Javascript 如何用Jquery中的其他字符替换每个字符,javascript,jquery,string,replace,Javascript,Jquery,String,Replace,我正在尝试创建一个textarea输入字段,自动将特定字符替换为不同的字符;示例:当用户键入“a”字符时,应自动将其替换为“o”字符。我是jquery新手,因此您能告诉我以下代码有什么问题吗: $(function() { $('#myTextBox').keyup(function() { $("a").replaceWith( "o" ); $("z").replaceWith( "N" ); $("y").replaceWith( "

我正在尝试创建一个textarea输入字段,自动将特定字符替换为不同的字符;示例:当用户键入“a”字符时,应自动将其替换为“o”字符。我是jquery新手,因此您能告诉我以下代码有什么问题吗:

$(function() {
    $('#myTextBox').keyup(function() {
        $("a").replaceWith( "o" );
        $("z").replaceWith( "N" );
        $("y").replaceWith( "M" );
        $("p").replaceWith( "f" );
        $("v").replaceWith( "K" );
        $("b").replaceWith( "P" );
    });
});
谢谢你的帮助,谢谢

编辑:

谢谢大家,以下各项工作如期进行:

$(function() {
    $('#myTextBox').keyup(function() {

        $(this).val($(this).val().replace(/a/g, "o"));

    });
});
首先,
$(“a”)
实际上以页面上的所有锚元素为目标,所以我猜这不是您想要的(其他元素甚至不存在,除了p,所以您的选择器将不返回任何内容)。第二,您可以在不使用任何特殊jQuery代码的情况下使用

而不是:

$("a").replaceWith( "o" );
尝试:

要分解这一点:

var oldValue = $(this).val();
var newValue = oldValue.replace(/a/g, "o");

// Set to new value
$(this).val(newValue);

对于这样的事情:

<div class="normal">Lorem "ipsum "dolor"</div>
Lorem“ipsum”dolor”
结果:

<div class="normal">Lorem ipsum dolor</div>
Lorem ipsum dolor

jquery选择器用于选择dom元素。不是从文本框中选择值。您应该使用
val()
函数获取值。请回答:“正确吗?”您在应用程序中尝试过吗?我将代码更改为使用过的val()函数,但不确定是否正确。对于给定的示例,这是可以的,但如果不仔细执行,它将不适用于具有可传递替换的解决方案(如果它最终是循环的,它将根本不起作用)。想象一下,如果您还对“o”进行了规则替换,会发生什么“但是你先做
a->o
替换,你就会明白我的意思了。@Platinum,说得好。在这种情况下是有效的,但评论很棒。
<div class="normal">Lorem "ipsum "dolor"</div>
<div class="normal">Lorem ipsum dolor</div>