如何用文本框中的另一个字母替换一个字母
假设我想要将文本框区域中的某个特定字母作为目标,并使用jquery或javascript替换为另一个字母,那么我该如何做到这一点并仍然能够以另一个字母为目标信后,再次,再次等等?改变的信和它将被改变的内容将从文本框或下拉列表中输入(取其中的一个更容易)如何用文本框中的另一个字母替换一个字母
PS我试过了jQuery的替换函数,它没有工作(我可能没有使用它正确虽然:)
$("button").click(function() {
$("Changed").replaceWith($("New") );
});
$("button").click(function() {
var old = $("#Changed").val();
var replacement = $("#New").val();
var regexp = new RegExp(old, 'g');
$("#Input").val(function(i, current) {
return current.replace(regexp, replacement);
});
});
- 您需要使用
#
的ID之前选择它们。 - 您需要使用
.val()
来获取输入值。 - jQuery的
.replaceWith
用于替换整个DOM元素,而不是更改输入的值。 - 您使用
.val()
来更改输入的值。当参数是一个函数时,函数会以当前值作为参数进行调用,并将返回值放置在其位置。 - Javascript方法
.replace()
用于执行字符串中的替换。要执行多个替换,您需要使用RegExp
和g
标志。
谢谢:)它甚至改变了一切!什么是正则表达式? – Clarinetking 2014-09-10 22:03:56
正则表达式。 http://www.regular-expressions.info/ – Barmar 2014-09-10 22:04:31
请检查下面的代码,如果有帮助:http://jsfiddle.net/La2y734g/2/
HTML如下
<textarea id="Input" cols="50" rows="5">This textbox has been given a name of "myTextBox". This can be used by any script that process the contents of this textbox (once it's been submitted to the server).</textarea>
<br>Replace
<input type="text" id="replace">with
<input type="text" id="with">
<button>Detect Single Letters And Replace</button>
JavaScript作为弗洛WS
$("button").on("click", function() {
//$("#Input").replaceWith($("Change") );
var toReplace = $('#replace').val();
var withText = $('#with').val();
var newText = $("#Input").val().replace(toReplace, withText);
$("#Input").val(newText);
});
你真令人惊叹!我很想理解它是如何工作的:) .val是否意味着它里面的东西?它如何凝聚在一起?再次感谢:D – Clarinetking 2014-09-10 21:58:10
@Clarinetking val()表示文本框内的文本或其值。一旦他得到它,他将用你想要的值替换它的值,然后再次将它应用于Input的值。 – Gjohn 2014-09-10 22:00:19
优秀:)谢谢您澄清:) – Clarinetking 2014-09-10 22:00:50
你能发布您的代码,所以我们可以清楚地看到你尝试过什么? – Gjohn 2014-09-10 21:41:53
http://jsfiddle.net/clarinetking/6cLgghme/此外,我知道变化不是一个有效的项目,因为它不是一个div或类似的东西(可能是某个奇特的术语) – Clarinetking 2014-09-10 21:42:54
更新:显示我的意思是更好: http://jsfiddle.net/clarinetking/6cLgghme/1/ – Clarinetking 2014-09-10 21:49:06