2015-01-31 4 views
1

У меня есть следующий код, но это не работает:Изменение HREF в HTML

<html> 
<head> 
    <title>Title</title> 
</head> 

<body> 
<script type='text/javascript'> 
window.onload = function(){ 
var links = document.getElementsByTagName('A'); 
    for(var i = 0; i < links.length; i++){ 
     links[i].href = 'test.html'; 
    } 
} 
</script> 
<ul> 
<li><a href = 1.html>1.</a></li> 
<li><a href = 2.html>2.</a></li> 
<li><a href = 3.html>3.</a></li> 
</ul> 
</body> 
</html> 

мне нужно изменить все ссылки на «test.html». Без JQuery.

+1

Что на ваш вопрос именно? –

ответ

0

Вы просто должны изменить links[i].href += 'test.html'; на следующее:

links[i].setAttrtibute('href','test.html'); 

Update

Как Мышелов уже указывался ниже в комментариях, это <a href = 1.html>1.</a> не является допустимой HTML. Вы должны вложить значение, присваиваемое href в одинарных или двойных кавычках, как показано ниже:

<a href = "1.html">1.</a> 
+0

Спасибо! Это работа –

+0

'ссылки [i] .href = 'test.html'' также должны отлично работать? Однако HTML недействителен. 'href = 1.html' должен быть' href = "1.html" '. – Mouser

+0

'setAttrtibute' не будет работать. И свойство 'setAttribute', и' href' должно работать. Но изменение свойства обычно предпочтительнее, чем изменение атрибута. – Oriol

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