テキストエリアのテキストを取得し、すべての箇条書きのHTMLエンティティ•
を·
に置き換えたいとします。JavaScriptを別のものに置き換える
通常のアプローチstr.replace(/•/g,"·");
は機能しません。
アドバイスをいただければ幸いです。
テキストエリアのテキストを取得し、すべての箇条書きのHTMLエンティティ•
を·
に置き換えたいとします。JavaScriptを別のものに置き換える
通常のアプローチstr.replace(/•/g,"·");
は機能しません。
アドバイスをいただければ幸いです。
textareaからテキスト値を戻すときは、すでに実際の文字に変換されています。 、その文字列の文字列置換を行うには
次に、2番目のアプローチの例を示します。
var newText = oldText.replace(/•/g, "");
hereの例を試すことができます。
最初のアプローチに進みたい場合は、questionと、そのテキストの文字を対応するHTMLエンティティに変換する方法についてのその回答を参照してください。
表示されたコードは箇条書きの点を削除し、jsfiddleコードはそれらを "[DELETED]"というテキストに置き換えますが、その原則はもちろん明らかです。問題の操作では、置換文字列は '' · ''、または等価的に' '" "'になります。ユーザーが文字どおりに入力した場合は、 '•'のような文字列を置き換えることを意図している場合は、別の質問です。 –
あなたはjQueryのせずにこれをしたい場合:
var myTextarea = document.getElementById('id_of_your_textarea');
myTextarea.value = myTextarea.value.replace(/•/g, '·');
のjQuery:
$("#myTextarea").val($("#myTextarea").val().replace(/•/g, '·'));
.val()
は.val('str')
が値を設定します、入力要素から値を取得します。
すべて動作します。 jsFiddleに問題を表示し、私たちに教えてください - どのブラウザでこの問題が起こっていますか? – c69
この箇条書きは、このようにエンコードされているのか、それともリスト要素から来ていますか? – giker
うまく動作します:http://jsfiddle.net/yXGD4/1/ – m90