2016-03-15 2 views
0

Как заменить «http: //» или «https: //» на текст, добавленный с помощью javascript?Заменить строку с помощью jquery

Я также интересуюсь решениями регулярных выражений.

Вот что я сделал до сих пор:

JSFIDDLE

HTML:

<div class="string"></div> 

JS:

$text = $('.string').text("http://www.text.com"); 

if ($text.startsWith('http://')) { 
    $text.replace('http://',''); 
} 
else if ($text.startsWith('https://')) { 
    $text.replace('https://',''); 
} 
+0

Вам необходимо назначить обратно замененное значение –

ответ

0

Проблема заключается в том, что содержит текст. он содержит элемент, а не текст!

попробовать этот код:

$text.html($text.html().replace('http','')); 

обновление

редактирования и упрощения кода было бы:

$text = $('.string').text("http://www.text.com"); 

$text.text($text.text().replace('https://','').replace('http://','')); 

обновления (снова)

Yo u также может использовать регулярное выражение для этого.

$text.text($text.text().replace(/http(s?):\/\//g,'')); 

Plaease проверить это updated fiddle.

1

Проверьте этот обновленный fiddle

var $text = $('.string').text("http://www.text.com"); 

if ($text.text().indexOf('http://') != -1) 
{ 
    $text.text($text.text().replace('http://','')); 
} 
else if ($text.text().indexOf('https://') != -1) { 
    $text.text($text.text().replace('https://','')); 
} 
0

Попробуйте это:

var $text = $('.string').text("http://www.text.com"); 

$text.text($text.text().split('://')[1]); 

Этот код удалит любой протокол из вашего URL.

Смежные вопросы