Я хочу использовать jQuery, чтобы обернуть якорь mailto: вокруг адреса электронной почты, но он также захватывает пустое пространство, которое генерирует CMS.
Вот HTML-код, с которым мне нужно работать, сценарий, который у меня есть, и копия вывода.
HTML
<div class="field field-type-text field-field-email">
<div class="field-item">
name@example.com </div>
</div>
JQuery JavaScript
$(document).ready(function(){
$('div.field-field-email .field-item').each(function(){
var emailAdd = $(this).text();
$(this).wrapInner('<a href="mailto:' + emailAdd + '"></a>');
});
});
Сгенерированный HTML
<div class="field field-type-text field-field-email">
<div class="field-items"><a href="mailto:%0A%20%20%20%20name@example.com%20%20%20%20">
name@example.com </a></div>
</div>
Хотя я подозреваю, что другие, читающие этот вопрос, возможно, захотят просто убрать начальные и хвостовые пробелы, я очень рад потерять все пробелы, учитывая, что я обертываю адрес электронной почты.
Ответы:
Используйте
replace
функцию в js:Это удалит все пробелы
Если вы хотите удалить только начальные и конечные пробелы , используйте метод jQuery $ .trim:
источник
Javascript имеет встроенную отделку:
Это не работает в IE8. Если вам нужно поддерживать старые браузеры, используйте ответ Tuxmentat или Paul .
источник
На самом деле, jQuery имеет встроенную функцию обрезки:
Смотрите здесь для деталей.
источник
str=str.replace(/^\s+|\s+$/g,'');
источник