如何在Jquery中用其他字符替换每个字符
how to Replace each character with other character in Jquery
我正在尝试创建一个文本区域输入字段,它可以自动将特定字符替换为不同的字符;例如:当用户键入"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" );
尝试:
$(this).val($(this).val().replace(/a/g, "o"));
分解:
var oldValue = $(this).val();
var newValue = oldValue.replace(/a/g, "o");
// Set to new value
$(this).val(newValue);
http://jsfiddle.net/2fYdT/69/
$(document).ready(function() {
$(".normal").each(function() {
var text = $(this).html();
text = text.replace(/"/g, '');
$(this).html(text);
});
});
像这样的东西:
<div class="normal">Lorem "ipsum "dolor"</div>
结果:
<div class="normal">Lorem ipsum dolor</div>
相关文章:
- 无效字符替换时出错
- 在JavaScript中,如何用一个字符替换字符串中的所有字母
- 不能将 UTF-8 字符替换为正则表达式
- .keyup() 上的非拉丁字符替换在快速键入时不起作用
- 将字符串中的重复字符替换为不断增长的数字 [Javascript]
- 为什么不用特殊字符替换选择文本,以及如何删除此特殊字符
- 将ASCII字符替换为等效字符
- Javascript:用其他字符替换反斜杠和双引号
- Angularjs:显示字符串中的最后四个字符,并将其余字符替换为“X”
- 用字符替换将字符串之类的数组替换为数组
- 用连字符替换字符串中的空格
- 特殊字符替换为空格
- 将所有字符替换为 #,最后 4 个字符除外
- 将文本上的特殊字符替换为 jquery
- 将字符替换为标记(例如 *hi* 到
hi
) - JS中的多个字符替换 - 如何在同一函数中停止对先前结果的替换
- 删除时将字符替换为另一个字符
- 将所有特定字符替换为计数器升序
- Javascript 将 32 以下的字符替换为 x(charcode)
- Javascript:正则表达式,用于将某些字符替换为十六进制代码