Печать данных из формы в 3 колонки
Доброго времени суток! Подскажите пожалуйста, как лучше организовать вывод данных из формы в 3 колонки?
Я реализовал вывод данных, но они выводятся единоразово, и затем заменяються на новые. Исходный код: <form action="" onsubmit="FA(this.name);return false;","" method="post" name="fm" id="fm" > ..... </form> <span id="paste"></span>
function FA()
{
var len=document.fm.elements.length-1; //length-1, потому что кнопка считается за элемент и мы ее отбрасываем.
var mas=[]; // создаем массив к торый собственно и будем заполнять
var paste=document.getElementById('paste');
for(var i=0;i<len;i++)
{
var val=document.fm.elements[i].value;
if (val!=0 && val!=undefined && val!=null)
{ // дабы не забивать массив не определенными значениями мы делаем проверку на передаваемое значение;
mas.push(val); // работаем с массивом как со стеком
}
}
paste.innerHTML=mas; // ну и вывод массива
}
|
Цитата:
2. Зачем тебе массив mas, ели нужен только вывод? |
1. Мне нужно выводить значение из 3ех полей: Имя, е-мейл, и текст. Поэтому я считываю их в масив.
2. По поводу вывода и был вопрос, создать таблицу с тремя колонками не проблема, а вот как организовать вывод каждого нового значения в новую колонку. |
Цитата:
Цитата:
Первое пиши в первую колонку... Второе во вторую, а третье в третью... |
Дело в том, что мне не удается разобраться, как это организовать. Таким кодом, я описываю страницу:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Доска пожеланий</title>
<script language="JavaScript" src="FA.js" type="text/javascript"></script>
<script type="text/javascript">
var ok1=false
function test(form)
{
if (form.Name.value == "")
{
ok1=false
alert("Введите имя!")
}
else
if(form.Name.value.length <= 3)
{
ok1=false
alert("длина текста < 3");
}
else
if (form.wi.value == "")
{
ok1=false
alert("Wishes is empty!")
}
else ok1=true
}
</script>
<link type="text/css" rel="stylesheet" href="style.css">
</head>
<body>
<header><h1>Board for wishes</h1></header>
<h4>Add your wish</h4>
<form action="" onsubmit="FA();" method="post" name="fm" id="fm" >
<p>
<label for='Name'>Name:</label>
<input type="text" id="Name" name="Name" onkeydown="javascript:return ((event.keyCode>64)&&(event.keyCode<91))">
</p>
<p>
<label for='EMail'>EMail:</label>
<input type="email" id="EMail" name="EMail" >
</p>
<p>
<label for='txt'>Your wish:</label>
<textarea name="wi" cols="30" raws="10" wrap="virtual" ></textarea>
</p>
<p>
<input type="submit" name="Send" value="send" onclick="test(fm)">
</p>
</form>
<span id="paste"></span>
</body>
</html>
А таким, пытаюсь заносить в таблицу данные
function FA()
{
var len=document.fm.elements.length-1;
var mas=[];
var paste=document.getElementById('paste');
cod="<table width=100%><tr>"; // КОД ДЛЯ ЗАПИСИ В paste
for(var i=0;i<len;i++)
{
var val=document.fm.elements[i].value;
if (val!=0 && val!=undefined && val!=null)
{
mas.push(val);
cod.="<td>".val."</td>";
}
}
cod.="</tr></table>";
paste.innerHTML=cod; // отображение массива колонками
}
Буду благодарен, за любую помощь. |
Цитата:
|
таким образом, я намеревался занести значения в таблицу.
|
Denny, это что за операции? Откуда ты их взял? Что они делают? :)
|
Мне их посоветовали на одном из интернет-ресурсов. Изначально код имел вид:
function FA(){
var len=document.fm.elements.length-1; //length-1, потому что кнопка считается за элемент и мы ее отбрасываем.
var mas=[]; // создаем массив к торый собственно и будем заполнять
var paste=document.getElementById('paste');
for(var i=0;i<len;i++){
var val=document.fm.elements[i].value;
if (val!=0 && val!=undefined && val!=null){ // дабы не забивать массив не определенными значениями мы делаем проверку на передаваемое значение;
mas.push(val); // работаем с массивом как со стеком
}
}
paste.innerHTML=mas; // ну и вывод массива
}
но при этом, все значения из полей выводились единоразово, а при попытке добавить новую запись, она перезаписывалась, вместо старой. Я задал вопрос, о выводе данных в 3 колонки, и мне порекомендовали вот так править вышеуказанный код:
function FA()
{
var len=document.fm.elements.length-1;
var mas=[];
var paste=document.getElementById('paste');
cod="<table width=100%><tr>"; // КОД ДЛЯ ЗАПИСИ В paste
for(var i=0;i<len;i++)
{
var val=document.fm.elements[i].value;
if (val!=0 && val!=undefined && val!=null)
{
mas.push(val);
cod.="<td>".val."</td>";
}
}
cod.="</tr></table>";
paste.innerHTML=cod; // отображение массива колонками
}
|
Мои познания в javascript лишь поверхностны, поэтому я надеюсь на помощь форумчан, на разных интернет-ресурсах.
|
| Часовой пояс GMT +3, время: 13:33. |