|
|
|
| Добавляю несколько div-ов на страницу (при помощи appendChild()). Но так же есть необходимость иметь возможность удалить часть этих div-ов. Использую следущий код:
function HideError(divId)
{
elem = document.getElementById(divId);
document.body.removeChild(elem);
}
| где я передаю ID дива, который нужно удалить. Но у меня почему-то удаляются все дивы :( Не могли бы подсказать в чем проблема? Вот весь код:
<html>
<script>
function myFunc()
{
ShowError('field1','sample text');
ShowError('field2','error2');
}
function HideError(divId)
{
elem = document.getElementById(divId);
document.body.removeChild(elem);
}
function ShowError(field, message)
{
var brAsMSIE = (navigator.userAgent.indexOf ('MSIE') > 0) ? 1 : 0;
var elem = (brAsMSIE) ? (document.createElement ('<div name="myName">')) : (document.createElement ('div'));
with (elem)
{
id = field + 'error_message';
}
parentField = document.getElementsByName(field);
with (elem.style)
{
border = '1px dotted #c0c0c0';
background = '#f0f0f0';
opacity = '0.6';
position = 'absolute';
top = parentField[0].offsetTop + 13;
left = parentField[0].offsetLeft + 25;
}
elem.innerHTML = message + ' <a href="" onclick = "HideError(field+"error_message")">[x]</a>';
document.body.appendChild(elem);
}
</script>
<body>
<form>
<input type="text" name="field1"><br/>
<input type="text" name="field2"><br/>
<input type="text" name="field3"><br/>
<input type="button" value="Show Errors" onclick="myFunc()">
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: tyoma_first
(11.01.2009 в 02:45)
| | Вот, написал только что для себя, что бы понять как эта кухня работает, надеюсь вам пригодится.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title></title>
</head>
<body>
<script type="text/javascript">
var col = 0;
function Add(){
col++;
var div_id = 'div_id_' + col;
var parent = document.getElementById('list');
var child = document.createElement('DIV');
child.innerHTML = 'id="' + div_id + '" <a href="#" onclick="delitDiv(\'' + div_id + '\');">Удалить DIV ' + div_id + '</a>';
with(child.style){
border = '1px dotted #c0c0c0';
background = '#f0f0f0';
margin = '6px 0px 0px 0px';
}
child.setAttribute('id', div_id);
parent.appendChild(child);
}
function delitDiv(div_id){
var del = document.getElementById(div_id);
var parent = document.getElementById('list');
parent.removeChild(del);
}
</script>
<a href="#" onclick="Add();">создать новый DIV</a><br />
<div id="list"></div>
</body>
</html>
|
| |
|
|
|