2014-02-17 8 views
0

Я пытаюсь удалить первый «/» из следующего кодаУдалить прямой слэш из URL JQuery

if ($(this).find('img').length){ 
    var url = new URL($(this).find('img').attr('src')); 
    $("#ajaximageid").val(url.pathname); 
} 

Я пытался использовать

url.replace("/","") but I get an error. 

Любая помощь будет оценена.

+0

Что такое 'новый URL-адрес()'? –

+1

@ Karl-AndréGagnon - конструктор DOM API для создания URL-адресов и обработки их в hash/search/pathname и т. Д. –

+0

Почему бы вам не использовать только var url = $ (this) .find ("img"). Prop ("src "), а затем $ (" # ajaximageid "). val (url.replace ("/"," ")); ? – Pavlo

ответ

1

Я тест объект URL-адрес и выяснить, вы не можете удалить первый /.

Событие, если вы делаете url.pathname = 'test';, путь /test.

Что вы можете сделать, это, когда вы используете его, вы режете первый символ:

$("#ajaximageid").val(url.pathname.slice(1)); 
+0

Спасибо, что сделал трюк. – Rob

1

Попробуйте заменить его, когда вы извлекая источник изображения

var url = new URL($(this).find('img').attr('src').replace("/", "")); 

Когда вы вызываете заменить способ, которым Вы в данный момент, вы пытаетесь выполнить это действие на объект URL, не строка. Попробуйте то, что я рекомендовал, чтобы вы могли это сделать упреждающие

0

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

if ($(this).find('img').length){ 
    var srcImg = $(this).find('img').attr('src'); 
    srcImg = srcImg.substring(0, srcImg.indexOf("/")) + srcImg.substring(srcImg.indexOf("/") + 1, srcImg.length); 
    var url = new URL(srcImg); 
    $("#ajaximageid").val(url.pathname); 
} 
Смежные вопросы