1

jQuery が適切に実装された次のコードがあります (機能することがテストされています)。

var notrightfake = $("#ansbox").val();
var notright = notrightfake.replace(" ", "");

そして箱です$("#ansbox")input type="text"しかし、私が入力したとしたらHe llo t his is m e、プログラムはHellothisismeまったく動作しないのではなく、 を表示するはずではありませんか?

jsFiddle の例: http://jsfiddle.net/WUvu5/

ご支援いただきありがとうございます、

ルーカス・チェン

4

4 に答える 4

6

このreplace関数は、部分文字列の最初の出現のみを置き換えます。

すべての出現を置き換えるには、正規表現を使用する必要があります。

var notright = notrightfake.replace(/ /g, "");
于 2012-04-24T06:38:00.327 に答える
1

実際の置換を行う必要があります。コード内の変数に割り当てるだけです。

var notrightfake = $("#ansbox").val();
$("#ansbox").val(notrightfake.replace(" ", ""));

編集:イベントでそれを使用する必要があります。keyup

$('input').keyup(function(){
    var newValue = this.value.replace(/\s/, '');
    $(this).val(newValue);
});

デモ: http://jsfiddle.net/elclanrs/3YWxh/

于 2012-04-24T06:38:31.637 に答える
0

以下のコードを試してください。

var notrightfake = $("#ansbox").val();
var notright = notrightfake.replace(/\s+/g, "");
alert(notright);

または、いくつかのトリム機能を使用できます。

function trim(str) {
    return str.replace(/^\s+|\s+$/g,"");
};
function ltrim(str) {
    return str.replace(/^\s+/,"");
};
function rtrim(str) {
    return str.replace(/\s+$/,"");
};
于 2012-04-24T06:51:25.537 に答える
0

これを試してください
notrightfake.replace(/ /gi, "");

于 2012-04-24T06:38:34.153 に答える