div 中的字符串替换

发布于 2024-12-04 20:35:30 字数 237 浏览 1 评论 0原文

我想替换 #TextArea1 中的特定字符串。单击按钮时会发生这种情况。

使用下面的代码进行尝试,但无法使其工作:

$('#TextArea1').text().replace("wef","--");

What is the Correct syntax to replacement a word in a div?

I want to replace a particular string in #TextArea1. This happens when a button is clicked.

Trying it out with the below code, but unable to get it work:

$('#TextArea1').text().replace("wef","--");

What is the correct syntax to replace a word in a div?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

悲念泪 2024-12-11 20:35:30

将函数传递给 text()[docs]方法,返回想要设置的值:

$('#TextArea1').text(function( i, txt ) { 
    return txt.replace("wef","--"); 
});

函数参数如下:

  • i是迭代中当前元素的索引
  • txt 是当前元素的当前文本内容

函数返回的值将设置为当前元素的新值。

Pass a function to the text()[docs] method that returns the value you want set:

$('#TextArea1').text(function( i, txt ) { 
    return txt.replace("wef","--"); 
});

The function parameters are as follows:

  • i is the index of the current element in the iteration
  • txt is the current text content of the current element

The value returned from the function will be set as the new value for the current element.

躲猫猫 2024-12-11 20:35:30

你已经很接近了,试试这个:

$('#TextArea1').text($('#TextArea1').text().replace(/wef/g,"--"));

或者一个优化的

var $textarea = $('#TextArea1');
$textarea.text($textarea.text().replace(/wef/g,"--"));

如果它是一个 textarea 元素,你会这样做:

var $textarea = $('#TextArea1');
$textarea.val($textarea.val().replace(/wef/g,"--"));

You are close, try this:

$('#TextArea1').text($('#TextArea1').text().replace(/wef/g,"--"));

Or an optimized one

var $textarea = $('#TextArea1');
$textarea.text($textarea.text().replace(/wef/g,"--"));

If it's a textarea element, you would do:

var $textarea = $('#TextArea1');
$textarea.val($textarea.val().replace(/wef/g,"--"));
如歌彻婉言 2024-12-11 20:35:30

您还设置了文本:

var text = $('#TextArea1').text().replace("wef","--");
$('#TextArea1').text(text);

或者,使用函数:

$('#TextArea1').text(function(index, text) {
  return text.replace("wef","--");
});

注意:如果这是

var text = $('#TextArea1').val().replace("wef","--");
$('#TextArea1').val(text);

You have set the text also:

var text = $('#TextArea1').text().replace("wef","--");
$('#TextArea1').text(text);

or, using a function:

$('#TextArea1').text(function(index, text) {
  return text.replace("wef","--");
});

Note: if this is a <textarea>, use val() instead of text().

var text = $('#TextArea1').val().replace("wef","--");
$('#TextArea1').val(text);
倦话 2024-12-11 20:35:30

replace() 创建一个新字符串并返回它,因此它被返回到稀薄的空气中。您需要获取新字符串并将其发送回文本框。这个 jsfiddle 显示了如何操作。

<textarea id="t">
    hello
</textarea>
var text = $('#t').text();
text = text.replace('h', 'b');
$('#t').text(text);

replace() creates a new string and returns it, so it's getting returned into thin air. You need to grab the new string and send it back into the textbox. This jsfiddle shows how.

<textarea id="t">
    hello
</textarea>
var text = $('#t').text();
text = text.replace('h', 'b');
$('#t').text(text);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文