jQuery String Replace in TextArea

匿名 (未验证) 提交于 2019-12-03 02:33:02

问题:

I'm trying to do a string replace in a textarea after the user has entered their content and nothing I've tried is working. Any help would be greatly appreciated. This is where I am:

<textarea id="field_id_29"></textarea>  $("#field_id_29").bind("change keyup input",function(){      var text = $("#field_id_29").val();      text = text.replace(/source/g,"www")      $("#field_id_29").val(text); }); 

I need to replace www-source with www.

jsFiddle is here: http://jsfiddle.net/6RNY2/

回答1:

Try this,

$("#field_id_29").change(function(){     var text = $(this).val();     var regexp = /www-source/gi;     if ( text.match(regexp) ){               text = text.replace(/www-source/g,"www");         return $(this).val(text);     }     return false; }); 

When the field changes we grab the value, compare if against a regular expression and if we have a match we replace the text and we are done, otherwise we just return.



回答2:

jsfiddle

Note: inside function this is reference of textarea so you directly use this.value instead of accessing textarea value using id.



回答3:

Try this,

Live Demo



回答4:

Your code works, you just need to use jQuery instead of Mootools in your jsfiddle, probably also just use the change event so that it replaces the text only after the textarea has been updated



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!