Нужно доработать скрипт
Стоимость работы 500 рублей, оплата в WMR.
Есть два скрипта (примеры ниже) оба делают одно и то же, но по-разному. Необходимо их "скрестить", взяв нужные функции. Первый скрипт: <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Script-Type" content="text/javascript"> <script type="text/javascript"> var clone; function cloneRow(){ var rows=document.getElementById('mytab').getElementsByTagName('tr'); var index=rows.length; clone=rows[index-1].cloneNode(true); var inputs=clone.getElementsByTagName('input'), inp, i=0 ; while(inp=inputs[i++]){ inp.name=inp.name.replace(/\d/g,'')+(index+1); } } function addRow(){ var tbo=document.getElementById('mytab').getElementsByTagName('tbody')[0]; tbo.appendChild(clone); cloneRow(); } onload=cloneRow; </script> </head> <body> <form> <p><input type="button" value="Add a new row" onclick="addRow()"></p> <table border="1" id="mytab"> <tr> <th>Field 1</th> <th>Field 2</th> <th>Field 3</th> </tr> <tr> <td><input type="text" size="10" name="field1" value="" /></td> <td><input type="text" size="10" name="field2" value="" /></td> <td><input type="text" size="10" name="field3" value="" /></td> </tr> </table> </form> </body> </html> Второй скрипт: <HTML> <HEAD> <TITLE> Add/Remove dynamic rows in HTML table </TITLE> <SCRIPT language="javascript"> function addRow(tableID) { var table = document.getElementById(tableID); var rowCount = table.rows.length; var row = table.insertRow(rowCount); var cell1 = row.insertCell(0); var element1 = document.createElement("input"); element1.type = "checkbox"; cell1.appendChild(element1); var cell2 = row.insertCell(1); cell2.innerHTML = rowCount + 1; var cell3 = row.insertCell(2); var element2 = document.createElement("input"); element2.type = "text"; cell3.appendChild(element2); } function deleteRow(tableID) { try { var table = document.getElementById(tableID); var rowCount = table.rows.length; for(var i=0; i<rowCount; i++) { var row = table.rows[i]; var chkbox = row.cells[0].childNodes[0]; if(null != chkbox && true == chkbox.checked) { table.deleteRow(i); rowCount--; i--; } } }catch(e) { alert(e); } } </SCRIPT> </HEAD> <BODY> <INPUT type="button" value="Add Row" onclick="addRow('dataTable')" /> <INPUT type="button" value="Delete Row" onclick="deleteRow('dataTable')" /> <table id="dataTable" border="1"> <tr> <TD><INPUT type="checkbox" name="chk"/></TD> <TD> 0 </TD> <TD> <INPUT type="text" /> </TD> </tr> </TABLE> </BODY></HTML> Необходимо доработать первый скрипт и добавить к нему функционал второго. 1. Сейчас первый скрипт обрабатывает только поля "input", но не обрабатывает поля "select". Необходимо, чтобы скрипт клонировал все возможные типы полей. Именно клонировал, чтобы в случае добавления каких-то новых полей в таблицу не было необходимости переписывать javascript. 2. Сейчас первый скрипт изменяет имена полей input на другие, необходимо, чтобы имена полей добавлялись такие же, как у родительского элемента. 3. Добавить функцию удаления отмеченной флажком строки как во втором скрипте. Первый флажок - служебный и будет использоваться только javacript'ом для удаления "лишних" строк. 4. Счётчик строк (как во втором скрипте) должен быть внутри одного из полей "input" и начинаться с нуля. Соответственно изменяться по-порядку в зависимости от добавления/удаления строк. Сделать всё это нужно как можно быстрее. Пишите в личку, после подтверждения заказ будет забронирован за вами. Преимущество тем, кто уже выполнял мои заказы. |
Всем спасибо, тема неактуальна. К сожалению, в очередной раз оказалось быстрее сделать самому.
|
Цитата:
|
Часовой пояс GMT +3, время: 14:52. |