Динамическая таблица - забрать параметр
<script> var countOfFields2 = "<?php $res = mysql_query("SELECT COUNT(*) FROM material WHERE id='$id'"); $row = mysql_fetch_row($res); $total = $row[0]; echo $total?>"; var curFieldNameId2 ="<?php $res = mysql_query("SELECT COUNT(*) FROM material WHERE id='$id'"); $row = mysql_fetch_row($res); $total = $row[0]; echo $total ?>"; var maxFieldLimit2 = 100; function deleteField2(a2) { var contDiv2 = a2.parentNode.parentNode; contDiv2.parentNode.removeChild(contDiv2); countOfFields2--; return false; } function addField2() { if (countOfFields2 >= maxFieldLimit2) { alert("Лимит првевышен = " + maxFieldLimit2); return false; } countOfFields2++; curFieldNameId2++; var div = document.createElement("tr"); div.innerHTML = "<th width=\"300\"><input size=\"30\" type=\"text\" name=\"material"+curFieldNameId2+"\" id=\"material"+curFieldNameId2+"\" value=\"material"+curFieldNameId2+"\" class=\"textfield\" /></th>"+"<input size=\"30\" type=\"text\" onBlur=\"sd()\" onChange=\"sd()\" onkeyup=\"document.getElementById('summ"+curFieldNameId2+"').value = document.getElementById('koli4"+curFieldNameId2+"').value*document.getElementById('cena"+curFieldNameId2+"').value;\" name=\"koli4"+curFieldNameId2+"\" id=\"koli4"+curFieldNameId2+"\" class=\"textfield\" />"+" <th width=\"100\"><label width=\"100\"><input type=\"text\" onChange=\"sd()\" onBlur=\"sd()\" size=\"5\"name=\"cena"+curFieldNameId2+"\" id=\"cena"+curFieldNameId2+"\" class=\"textfield\" onBlur=\"sd()\" onChange=\"sd()\" onkeyup=\"document.getElementById('summ"+curFieldNameId2+"').value = document.getElementById('koli4"+curFieldNameId2+"').value*document.getElementById('cena"+curFieldNameId2+"').value;\"/></label></th>"+"<th width=\"100\"><input size=\"30\" type=\"text\" name=\"summ"+curFieldNameId2+"\" id=\"summ"+curFieldNameId2+"\" class=\"textfield\" /></th>"+"<th><img src=\"img/Round Thing.png\" onclick=\"return addField2()\" onMouseOver=\"sd()\" width=\"30\" height=\"30\"></th>"+"<th><img src=\"img/x.png\" onclick=\"return deleteField2(this)\" onMouseOver=\"sd()\" width=\"25\" height=\"25\"></th>"; document.getElementById("parentId2").appendChild(div); return false; } </script> Функция onclick=\"return deleteField2(this)\" удаляет строчку в таблице подскажите как мне забрать из этой строчки допустим id = id=\"material"+curFieldNameId2+"\ это мне нужно для того чтобы удалить данную строчку из таблицы mysql но что -то не как не разберусь... |
Пробую так
var qw= this.countOfFields; считывает общие количество строк...:( направите пожалуйста хоть в каком направлении двигаться |
arahmanov,
возможно id = this.parentNode.parentNode.childNodes[0].id |
Цитата:
|
arahmanov,
скопируйте код html таблицы можно с 1 строкой для примера чтоб негадать |
<table id="" width="800" cellpadding="0" cellspacing="0" border="1"> <tr> <th scope="col" bgcolor="#999999">Выполненные работы</th> <span id="table" width="800"> <table id=""cellpadding="0" cellspacing="0" align="center" width="800" border="1"> <tr> <th width="300">Выполненные работы</th> <th width="100">Цена</th> <th width="100">Норма/час</th> <th width="100">Сумма</th> <th width="200">Исполнитель</th> <th align="center"> <img src="img/Round Thing.png" width="30" height="30" onclick="return addField();"/> </th> <th align="center"> <img src="img/x.png" width="25" height="25" onclick="return adeleteField(this);"/> </th> </tr> </table> вот от сюда считать надо id любое пофиг...хоть что то вытащить из добавленной строки var div = document.createElement("tr"); div.innerHTML = "<th width=\"300\"><input size=\"60\" type=\"text\" name=\"rabota"+curFieldNameId+"\" id=\"rabota"+curFieldNameId+"\" value=\"rabota"+curFieldNameId+"\" class=\"textfield\" /></th width=\"100\">"+"<th width=\"110\">1000</th>"+" <th width=\"100\"><label width=\"100\"><input type=\"text\" size=\"5\"name=\"norma"+curFieldNameId+"\" id=\"norma"+curFieldNameId+"\" class=\"textfield\" onBlur=\"sd()\" onChange=\"sd()\" onkeyup=\"document.getElementById('result"+curFieldNameId+"').innerHTML = this.value*1000;\"/></label></th>"+"<th width=\"100\"><div id=\"result"+curFieldNameId+"\" />Сумма</div></th>"+"<th width=\"200\"><select id=\"ispol"+curFieldNameId+"\" name=\"ispol"+curFieldNameId+"\"><option value=\"Нет исполнителья\">нет исполнителя</option><option value=\"Травин Николай\">Николай</option><option value=\"Малинин Вова\">Вова</option> <option value=\"Vlad\">Vlad</option><option value=\"Рамзанов Руслан\">Руслан</option> </select></th>"+"<th><img src=\"img/Round Thing.png\" onclick=\"return addField()\" onMouseOver=\"sd()\" width=\"30\" height=\"30\"></th>"+"<th><img id=\"rabota"+curFieldNameId+"\" src=\"img/x.png\" onclick=\"return deleteField(this)\" onMouseOver=\"sd()\" width=\"25\" height=\"25\"></th>"; вытаскивать я пытаюсь в функции удаления сама функция <script> var countOfFields ="<?php $res = mysql_query("SELECT COUNT(*) FROM rabota WHERE id='$id'"); $row = mysql_fetch_row($res); $total = $row[0]; echo $total?>"; var curFieldNameId = "<?php $res = mysql_query("SELECT COUNT(*) FROM rabota WHERE id='$id'"); $row = mysql_fetch_row($res); $total = $row[0]; echo $total?>"; var maxFieldLimit = 100; function deleteField(a) { var contDiv = a.parentNode.parentNode; contDiv.parentNode.removeChild(contDiv); var fcuk = this.childNodes[0].id $.ajax({ type: "POST", url: "http://localhost/arsenal/dell.php", data: ({fuck:fuck,}), dataType: 'json', success: function(data){ var prov = data; alert(fuck); if (prov=="ok"){ alert("Данные успешно добавленны"); window.location.href = "index.php" } else { alert("Ошибка сервера повторите попытку"); } } }); countOfFields--; return false; } |
arahmanov,
где строка из которой нужно вытащить id ? |
можно из этой ....1 столбец
<input size=\"60\" type=\"text\" name=\"rabota"+curFieldNameId+"\" id=\"rabota"+curFieldNameId+"\" value=\"rabota"+curFieldNameId+"\" class=\"textfield\" /> можно из этой где запускается непосредственна функция удаления последний столбец с картинкой <img id=\"rabota"+curFieldNameId+"\" src=\"img/x.png\" onclick=\"return deleteField(this)\" onMouseOver=\"sd()\" width=\"25\" height=\"25\"> |
мне нужен любой параметр из любого столбца данной строки
|
arahmanov,
<img id=\"rabota"+curFieldNameId+"\" src=\"img/x.png\" onclick=\"return deleteField(this)\" onMouseOver=\"sd()\" width=\"25\" height=\"25\">если тут будет просто id = this.id |
arahmanov,
на всякий случай id должно быть одно на странице, а вас похоже куча элементов с одним и темже id |
я так пробовал.... но почему то не работает пишу я в функции удаления вот сюда
function deleteField(a) { var contDiv = a.parentNode.parentNode; contDiv.parentNode.removeChild(contDiv); [COLOR="Red"]var fcuk = this.id;[/COLOR] $.ajax({ type: "POST", url: "http://localhost/arsenal/dell.php", data: ({fuck:fuck,}), dataType: 'json', success: function(data){ var prov = data; alert(fuck); if (prov=="ok"){ alert("Данные успешно добавленны"); window.location.href = "index.php" } else { alert("Ошибка сервера повторите попытку"); } } }); |
Цитата:
|
мне кажется функция не понимает что ей считать...
|
arahmanov,
почему так то var fcuk = this.id; ? если у вас this это a!!! var fcuk = a.id |
arahmanov,
и a.parentNode.parentNode.childNodes[0].idтоже должно сработать было |
не знаю почему но не хочет
function deleteField(a) { var contDiv = a.parentNode.parentNode; contDiv.parentNode.removeChild(contDiv); var fuck = a.id; $.ajax({ type: "POST", url: "http://localhost/arsenal/dell.php", data: ({fuck:fuck,}), dataType: 'json', success: function(data){ var prov = data; alert(fuck); if (prov=="ok"){ alert("Данные успешно добавленны"); window.location.href = "index.php" } else { alert("Ошибка сервера повторите попытку"); } } }); countOfFields--; return false; } и так var fuck = a.parentNode.parentNode.childNodes[0].id; если указываю var fuck = 'ок'; то работает и все работает стоит поставить var fuck = a.parentNode.parentNode.childNodes[0].id; даже alert не работает |
Цитата:
|
<table id="" width="800" cellpadding="0" cellspacing="0" border="1"> <tr> <th scope="col" bgcolor="#999999">Выполненные работы</th> <span id="table" width="800"> <table id=""cellpadding="0" cellspacing="0" align="center" width="800" border="1"> <tr> <th width="300">Выполненные работы</th> <th width="100">Цена</th> <th width="100">Норма/час</th> <th width="100">Сумма</th> <th width="200">Исполнитель</th> <th align="center"> <img src="img/Round Thing.png" width="30" height="30" onclick="return addField();"/> </th> <th align="center"> <img src="img/x.png" width="25" height="25" onclick="return adeleteField(this);"/> </th> </tr> <? $i =-1; do { $i++; printf (" <tr> <th width='300'><input size='60' type='text' id='%s' value='%s' class='textfield'/></th width='100'><th width='100'>1000</th><th width='100'><label width='100'><input type='text' size='5' id='%s' value='%s' class='textfield' onBlur='sd()' onChange='sd()' onkeyup=\"document.getElementById('%s').innerHTML = parseInt(this.value)*1000;\"/> </label></th><th width='100'><div id='%s' />%s</div></th><th width='200'><select id='%s'><option value='%s'>%s</option><option value='Травин Николай'>Николай</option><option value='Малинин Вова'>Вова</option> <option value='Vlad'>Vlad</option><option value='Рамзанов Руслан'>Руслан</option> </select></th><th><img src='img/Round Thing.png' onclick='return addField()' onMouseOver='sd()' width='30' height='30'></th><th><img src='img/x.png' onclick='return deleteField(this)' onMouseOver='sd()' width='25' height='25'></th> <tr> ", $rabotas["$i"],$myrow1["rabota_1"],$normas["$i"],$myrow1["norma"],$results["$i"],$results["$i"],$myrow1["sum"],$ispols["$i"],$myrow1["ispol"],$myrow1["ispol"]); } while ($myrow1 = mysql_fetch_array ($result1)); ?> <table align="center" id="parentId" width="800" cellpadding="0" cellspacing="0" border="1" ></table> </table> |
<table align="center" id="parentId" width="800" cellpadding="0" cellspacing="0" border="1" ></table> вот эта таблица в которую мы вставляем tr вот этим вод var div = document.createElement("tr"); div.innerHTML = "<th width=\"300\"><input size=\"60\" type=\"text\" name=\"rabota"+curFieldNameId+"\" id=\"rabota"+curFieldNameId+"\" value=\"rabota"+curFieldNameId+"\" class=\"textfield\" /></th width=\"100\">"+"<th width=\"110\">1000</th>"+" <th width=\"100\"><label width=\"100\"><input type=\"text\" size=\"5\"name=\"norma"+curFieldNameId+"\" id=\"norma"+curFieldNameId+"\" class=\"textfield\" onBlur=\"sd()\" onChange=\"sd()\" onkeyup=\"document.getElementById('result"+curFieldNameId+"').innerHTML = this.value*1000;\"/></label></th>"+"<th width=\"100\"><div id=\"result"+curFieldNameId+"\" />Сумма</div></th>"+"<th width=\"200\"><select id=\"ispol"+curFieldNameId+"\" name=\"ispol"+curFieldNameId+"\"><option value=\"Нет исполнителья\">нет исполнителя</option><option value=\"Травин Николай\">Николай</option><option value=\"Малинин Вова\">Вова</option> <option value=\"Vlad\">Vlad</option><option value=\"Рамзанов Руслан\">Руслан</option> </select></th>"+"<th><img src=\"img/Round Thing.png\" onclick=\"return addField()\" onMouseOver=\"sd()\" width=\"30\" height=\"30\"></th>"+"<th><img id=\"qw"+curFieldNameId+"\" src=\"img/x.png\" onclick=\"return deleteField(this)\" onMouseOver=\"sd()\" width=\"25\" height=\"25\"></th>"; document.getElementById("parentId").appendChild(div); return false; |
arahmanov, снова да ладом ))) жми кнопку
:write: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <table align="center" id="parentId" width="800" cellpadding="0" cellspacing="0" border="1" ></table> <script language="JavaScript" type="text/javascript"> var curFieldNameId = "12345" var div = document.createElement("tr"); div.innerHTML = "<th width=\"300\" ><input size=\"60\" type=\"text\" name=\"rabota"+curFieldNameId+"\" id=\"rabota"+curFieldNameId+"\" value=\"rabota"+curFieldNameId+"\" class=\"textfield\" /></th width=\"100\">" +"<th width=\"110\" >1000</th>" +"<th width=\"100\" id='test'><label width=\"100\"><input type=\"text\" size=\"5\"name=\"norma"+curFieldNameId+"\" id=\"norma"+curFieldNameId+"\" class=\"textfield\" onBlur=\"sd()\" onChange=\"sd()\" onkeyup=\"document.getElementById('result"+curFieldNameId+"').innerHTML = this.value*1000;\"/></label></th>" +"<th width=\"100\"><div id=\"result"+curFieldNameId+"\" />Сумма</div></th>" +"<th width=\"200\"><select id=\"ispol"+curFieldNameId+"\" name=\"ispol"+curFieldNameId+"\"><option value=\"Нет исполнителья\">нет исполнителя</option><option value=\"Травин Николай\">Николай</option><option value=\"Малинин Вова\">Вова</option> <option value=\"Vlad\">Vlad</option><option value=\"Рамзанов Руслан\">Руслан</option> </select></th>" +"<th><img src=\"img/Round Thing.png\" onclick=\"return addField()\" onMouseOver=\"sd()\" width=\"30\" height=\"30\"></th>" +"<th><img id=\"qw"+curFieldNameId+"\" src=\"img/x.png\" onclick=\"return deleteField(this)\" onMouseOver=\"sd()\" width=\"25\" height=\"25\"></th>"; document.getElementById("parentId").appendChild(div); function deleteField(a) { var id_rabota = a.parentNode.parentNode.childNodes[0].childNodes[0].id; alert(id_rabota); var id_norma = a.parentNode.parentNode.childNodes[2].childNodes[0].childNodes[0].id; alert(id_norma); var id_result = a.parentNode.parentNode.childNodes[3].childNodes[0].id; alert(id_result); var id_ispol = a.parentNode.parentNode.childNodes[4].childNodes[0].id; alert(id_ispol); var img_id = a.id; alert(img_id); } </script> </body> </html> |
Слушай, давай яндекс кошелек...или скинь в личку мобилу я тебе на телефон брошу(отблагодарю ). Все супер огромное спасибо!
|
я столько времени потерял из за своего не знания :)
|
Часовой пояс GMT +3, время: 02:10. |