JQuery заменить пробелы в слове - PullRequest
9 голосов
/ 08 февраля 2011

У меня есть select на моей странице с value из Test One

<option value="Test One">Test One</option>

Мне было интересно, есть ли способ заменить пробелы в словах, используя jQuery

Мне известна техника jQuery Trim, но она избавляет только от пробелов в начале и конце, и я ищу что-то, чтобы удалить пробелы, чтобы она стала TestOne

Есть идеи?

Ответы [ 2 ]

38 голосов
/ 08 февраля 2011

Простой string.replace сделает свое дело:

var str = "Test One";
str = str.replace(/ /g, '');

Теперь, что касается вашего вопроса, это то, где он становится немного запутанным. Если вы хотите заменить атрибут value , то:

$('option').val(function (i, value) {
    return value.replace(/ /g, '');
});

Если вы хотите заменить текст между тегами , тогда:

$('option').text(function (i, text) {
    return text.replace(/ /g, '');
});
13 голосов
/ 08 февраля 2011

Чтобы удалить все пробелы:

var str = $(selector).val();
str = str.replace(/\s+/g, '');

В JavaScript replace ловит только пробел first , поэтому для замены вам понадобится крошечное регулярное выражение. Если вы ожидаете только один пробел или ни одного, replace(' ', '') должен работать хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...