Показать сообщение отдельно
  #1 (permalink)  
Старый 26.01.2010, 22:50
Интересующийся
Отправить личное сообщение для Катерина Посмотреть профиль Найти все сообщения от Катерина
 
Регистрация: 20.01.2010
Сообщений: 20

Добавление полей формы по желанию пользователя
Доброго времени суток.
Фух, изучала-изучала. Что-то получилось. Но мой код копирует последнюю строку и добавляет её. Подскажите, пжл, как сделать так, чтобы всё-таки добавлялась строка с новыми полями, которым присваивалось имя с 2-мя индексами. Так как я потом считываю в двумерный массив значения введеные пользователем и выполняю ряд проверок. Очень хотела выполнить сама, но...
[JS]
var c=0;
function addline()
{
c++;
s=document.getElementById('table').innerHTML;
s=s.replace(/[\r\n]/g,'');
re=/(.*)(<tr id=.*>)(<\/table>)/gi;
s1=s.replace(re,'$2');
s2=s1.replace(/\[\d+\]/gi,'['+c+']');
s2=s2.replace(/(rmline\()(\d+\))/gi,'$1'+c+')');
s=s.replace(re,'$1$2'+s2+'$3');
document.getElementById('table').innerHTML=s;
return false;
}
function rmline(q)
{
if (c==0) return false; else c--;
s=document.getElementById('table').innerHTML;
s=s.replace(/[\r\n]/g,'');
re=new RegExp('<tr id="?newline"? nomer="?\\['+q+'.*?<\\/tr>','gi');
s=s.replace(re,'');
document.getElementById('table').innerHTML=s;
return false;
}

</JS>
......
<form name="first">
<span id="table">
<table>
<tr>
<td>Заголовок 1</td>
<td>Заголовок 2</td>
<td>Заголовок 3</td>
</tr>
<tr id="newline" nomer="[0]">
<td><input type="text" name="text01"></td>
<td><input type="text" name="text02"></td>
<td><input type="text" name="text03"></td>
</tr>
</table>
</span>
....
<td><input type="button" value="Добавить" onclick="return addline();"></td>
<td><input type="button" value="Удалить" onclick="return rmline(0);"></td>
...
Ответить с цитированием