JS скрипт замены html
Всем привет, задался вопросом, а как сделать через js замену html блока(строки)?
К примеру есть блок <div class="block">, а нужно чтоб через js заменялось к примеру на <div class="block2"></div><div class="block"> Всем за ранее спасибо! |
HTML, загруженный браузером - это уже не строка, а DOM - объектная модель документа.
|
candro,
да это легко вообще сделать. Например
<html>
<head>
<meta charset="windows-1251">
<style>
.block1{background: red}
.block2{background: green}
</style>
</head>
<body>
<div id="wrap">
<div class="block1">block1</div>
<div class="block2">block2</div>
</div>
<button id="but">push</button>
<script>
but=document.querySelector("#but")
wrap=document.querySelector("#wrap")
but.onclick=function(){
var re=/<div.*block1.*\/div>/,
block=wrap.innerHTML,
block=block.replace(re, "<div class='block2'>block2</div>")
wrap.innerHTML=block
}
</script>
</body>
</html>
Может я чо не так понял? |
krutoy, твой код не кроссбраузерный.
|
Не работает в IE8
|
А все из-за тупого косяка твоего.
|
danik.js,
А что именно? У меня нет IE:) |
krutoy, а нехер выеживаться. Нужно var писать при объявлении переменных.
|
danik.js,
Я не пойму, какая связь? Там в первоначальном варианте div был не закрыт. Может ты первый вариант проверял? Если нет, то хотелось бы, все-таки, понять логику и специфику его поведения. |
Эм, кроссбраузерность не важна, просто есть потребность, чтоб этот DOM элемент <div class="block">, заменялся на <div class="block2"></div><div class="block"> к примеру. Просто нужно сделать замену этого элемента через JS.
Самое главное, происходить это должно без нажатия куда либо. |
| Часовой пояс GMT +3, время: 02:39. |