私は2つのhtmlテキスト入力を持っていますが、最初のテキストボックスにユーザーが入力したものは、2番目のテキストボックスに反映する必要がありますが、それはすべてのスペースをセミコロンに置き換える必要があります。私はいくつかの現存するものを行い、すべてではなく最初のスペースに置き換えました、私はJqueryの.each関数を使用する必要があると思います、私はそれを使用しましたが、正確な結果を得ませんでした これを参照
HTML
Title : <input type="text" id="title"><br/>
Keyword : <input type="text" id="keyword">
Jquery:
$('#title').keyup(function() {
var replaceSpace = $(this).val();
var result = replaceSpace.replace(" ", ";");
$("#keyword").val(result);
});
ありがとう。
var result = replaceSpace.replace(/ /g, ";");
ここで、/ /g
は正規表現(正規表現)です。フラグg
はグローバルを意味します。すべての一致が置き換えられます。
正規表現のない純粋なJavascript:
var result = replaceSpacesText.split(" ").join("");
これを使用して、すべての空白を-
に置き換えます。
myString.replace(/ /g,"-")
すべてのスペースを置き換えるの簡単なコード
var str = 'How are you';
var replaced = str.split(' ').join('');
出力: Howareyou
$('#title').keyup(function () {
var replaceSpace = $(this).val();
var result = replaceSpace.replace(/\s/g, ";");
$("#keyword").val(result);
});
Javascriptのreplace関数は「all」を置換しないため、置換に正規表現を使用できます。必要に応じて、すべてのスペース、つまり文字列内の\ sをグローバルに置き換える必要があります。正規表現の後のg文字は、グローバル置換を表します。 seondパラメータは、置換文字、つまりセミコロンになります。
私はこれに出くわしましたが、これはうまくいきました(ほとんどのブラウザをカバーしています):
myString.replace(/[\s\uFEFF\xA0]/g, ';');
いくつかのバンプをヒットした後、このトリムポリフィルに触発されました: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/trim#Polyfill