tolst
Новичок
JavaScript - удаление тега с HTML страницы
есть внутри странички допустим такой тег:
<input type="file" name="somename" id="someid">
ниже мне нужно написать скрипт каторый не просто скроет этот тег с экрана (document.getElementById('someid').style.display = "none") а удалит этот тег вообще.
Нужно мне это для того, чтобы можно было обнулять значение value тега <input type="file"
Так как выставлять в тег этого типа значение value не льзя, а Form.Reset() мне делать не льзя, так как удалятся все данные... Брать во временный массив все данные, а затем делать Reset формы после чего выставлять данные тоже не получится, так как у меня этих полей может быть несколько...
<html>
<head>
<title>BLA BLA BLA</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="./stylesheet.css" rel="stylesheet" type="text/css">
</head>
<body>
<script language="JavaScript">
var lists = new Array();
var lists2 = new Array();
var tmps;
function AddPhoto(elementus){
tmps = "";
// Äîáàâëÿåì â ñïèñîê íóæíûé ïóòü
lists[lists.length] = elementus.value;
// Ãåíåðèðóåì ñïèñîê
GeneratePhotos();
GenerateInputs();
}
function deletePhoto(fedotov){
// Äîáàâëÿåì â ñïèñîê óäàë¸ííûõ
lists2[lists2.length] = fedotov;
// Ãåíåðèðóåì ñïèñîê
GeneratePhotos();
for (var i = 0; i < Fedotov.length; i++){
if (Fedotov.elements.type == "file" && Fedotov.elements.value == fedotov){
var deleted_file = Fedotov.elements.value.toString();
deleted_file = deleted_file.split("\\");
deleted_file = deleted_file[deleted_file.length-1];
document.getElementById('hiddens').innerHTML += "<input type='hidden' name='delete_array[]' value='" + deleted_file + "'>";
break;
}
}
}
function GeneratePhotos(){
tmps = "";
for (var i = 0; i < lists.length; i++) {
for (var z = 0; z < lists2.length; z++) {
if (lists == lists2[z]){
lists = "";
}
}
if (lists != ""){
tmps += "<table width='600' border='0'><tr><td width='100' valign='top'><img src='" + lists + "' width='100'></td><td valign='top'><b>" + lists + "</b></td></tr><tr><td> </td><td><a href=\"javascript:deletePhoto('" + lists.replace(/\\/g, '\\\\') + "');\">Óäàëèòü</a></td></tr></table><br>";
}
}
document.getElementById('fieldss').innerHTML = tmps;
// Äâèãàåì ïðîêðóòêó áðàóçåðà
scroll(0, 100000);
}
var gr = 2;
function GenerateInputs(){
for (var i = 0; i < Fedotov.length; i++){
if (Fedotov.elements.type == "file" && Fedotov.elements.value != ""){
Fedotov.elements.style.display = "none";
}
}
Fedotov.elements[Fedotov.length-gr].style.display = "block";
gr++;
}
</script>
<br><br><br>
<center>
<form method="post" action="http://avtovazbank/" name="Fedotov" enctype="multipart/form-data">
<div id="hiddens"></div>
<div id="fieldss"></div>
<table width="70%" cellspacing="0" cellpadding="0" border="0"><tr><td>
<script>
for (var i = 0; i < 100; i++){
document.write('<input type="file" name="fotka[]" style="width:100%;" onchange="AddPhoto(this);" style="display: none;">');
}
</script>
</td></tr></table>
<br>
<input type="submit" value="Îòïðàâèòü">
</form>
</center>
<script>
GenerateInputs();
function ShowAll(){
for (var i = 0; i < Fedotov.length; i++){
if (Fedotov.elements.type == "file"){
Fedotov.elements.style.display = "block";
}
}
}
</script>
<a href="javascript:ShowAll()">Ïîêàçàòü âñå</a>
</body>
</html>
есть внутри странички допустим такой тег:
<input type="file" name="somename" id="someid">
ниже мне нужно написать скрипт каторый не просто скроет этот тег с экрана (document.getElementById('someid').style.display = "none") а удалит этот тег вообще.
Нужно мне это для того, чтобы можно было обнулять значение value тега <input type="file"
Так как выставлять в тег этого типа значение value не льзя, а Form.Reset() мне делать не льзя, так как удалятся все данные... Брать во временный массив все данные, а затем делать Reset формы после чего выставлять данные тоже не получится, так как у меня этих полей может быть несколько...
<html>
<head>
<title>BLA BLA BLA</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="./stylesheet.css" rel="stylesheet" type="text/css">
</head>
<body>
<script language="JavaScript">
var lists = new Array();
var lists2 = new Array();
var tmps;
function AddPhoto(elementus){
tmps = "";
// Äîáàâëÿåì â ñïèñîê íóæíûé ïóòü
lists[lists.length] = elementus.value;
// Ãåíåðèðóåì ñïèñîê
GeneratePhotos();
GenerateInputs();
}
function deletePhoto(fedotov){
// Äîáàâëÿåì â ñïèñîê óäàë¸ííûõ
lists2[lists2.length] = fedotov;
// Ãåíåðèðóåì ñïèñîê
GeneratePhotos();
for (var i = 0; i < Fedotov.length; i++){
if (Fedotov.elements.type == "file" && Fedotov.elements.value == fedotov){
var deleted_file = Fedotov.elements.value.toString();
deleted_file = deleted_file.split("\\");
deleted_file = deleted_file[deleted_file.length-1];
document.getElementById('hiddens').innerHTML += "<input type='hidden' name='delete_array[]' value='" + deleted_file + "'>";
break;
}
}
}
function GeneratePhotos(){
tmps = "";
for (var i = 0; i < lists.length; i++) {
for (var z = 0; z < lists2.length; z++) {
if (lists == lists2[z]){
lists = "";
}
}
if (lists != ""){
tmps += "<table width='600' border='0'><tr><td width='100' valign='top'><img src='" + lists + "' width='100'></td><td valign='top'><b>" + lists + "</b></td></tr><tr><td> </td><td><a href=\"javascript:deletePhoto('" + lists.replace(/\\/g, '\\\\') + "');\">Óäàëèòü</a></td></tr></table><br>";
}
}
document.getElementById('fieldss').innerHTML = tmps;
// Äâèãàåì ïðîêðóòêó áðàóçåðà
scroll(0, 100000);
}
var gr = 2;
function GenerateInputs(){
for (var i = 0; i < Fedotov.length; i++){
if (Fedotov.elements.type == "file" && Fedotov.elements.value != ""){
Fedotov.elements.style.display = "none";
}
}
Fedotov.elements[Fedotov.length-gr].style.display = "block";
gr++;
}
</script>
<br><br><br>
<center>
<form method="post" action="http://avtovazbank/" name="Fedotov" enctype="multipart/form-data">
<div id="hiddens"></div>
<div id="fieldss"></div>
<table width="70%" cellspacing="0" cellpadding="0" border="0"><tr><td>
<script>
for (var i = 0; i < 100; i++){
document.write('<input type="file" name="fotka[]" style="width:100%;" onchange="AddPhoto(this);" style="display: none;">');
}
</script>
</td></tr></table>
<br>
<input type="submit" value="Îòïðàâèòü">
</form>
</center>
<script>
GenerateInputs();
function ShowAll(){
for (var i = 0; i < Fedotov.length; i++){
if (Fedotov.elements.type == "file"){
Fedotov.elements.style.display = "block";
}
}
}
</script>
<a href="javascript:ShowAll()">Ïîêàçàòü âñå</a>
</body>
</html>