1

我必须提交一个使用 javascript 创建的动态生成的 html 表,并在单击提交按钮时将此表传递给 php 邮件函数,我想知道当表单有任何内容时是否可以在 javascript 中保留动态生成的表单击提交按钮并且动态生成的表丢失时也会出错。我是一个初学者,我一直在使用 delete 制作动态生成的 javascript 表,现在我需要将此表传递给 php 提交按钮,然后只能继续进行

任何帮助将不胜感激,因为我现在时间很短,请帮助。

代码如下

向表中添加行

function addRow(){

var a =document.getElementById("sociallink").value;
    var b =document.getElementById("socialemail").value;
    var c =document.getElementById("socialpass").value;


var media=document.getElementById('media');

if ( media.selectedIndex  ==  "1" )
{
    media_type = "facebook";
}

var table = document.getElementById("dataTable");


var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
row.insertCell(0).innerHTML= '<input type="button" value = "Delete" onClick="Javacsript:deleteRow(this)">';
row.insertCell(1).innerHTML= media_type;
row.insertCell(2).innerHTML= a;
row.insertCell(3).innerHTML=b;
row.insertCell(3).innerHTML=c;

table.style.display ="block";

}

php回显html如下

    $form ="<form action='./form3.php'  method='post'  name='seoform'> 
        <tbody id='dataTable' border='1' cellpadding='2'>  
                      <tr>
                  <td> Remove Media </td> 
                      <td> Media </td>
                                <td>Media Link</td>
                                <td> Media Email</td>
                                <td> Media Password </td>

                      </tr>
<tr> 
<td> </td> 
<td  > <input type='submit' name='seoformbtn' value='Register'  />   </td> 
</tr> 


        </tbody> </form> ";

    echo $form;
4

2 回答 2

0

您可以将创建的表的标记存储在隐藏输入中,然后在提交表单时将其发送。

在表单中添加隐藏的文本区域

<textarea id="table-markup"></textarea>

CSS:

#table-markup{
   display: none;
}

给你的桌子一个像这样的ID:

<table id='table'><tbody id='dataTable'>.....</tbody></table>

var tableMarkup = document.getElementById("table");
document.getElementById("table-markup").value = tableMarkup.innerHTML;

现在,当表单提交时,它将与它一起发送。我建议使用 POST 方法发送表单数据(取决于您的表标记)

于 2013-03-22T06:41:58.647 回答
0

存储表格很简单,可以说您的表格是

<table id='tableid' >......</table>

var tbl = $('#tableid').html();
// to complement previous answer, then you put in hidden field
$("#table-markup").val(tbl);
于 2013-03-22T07:11:54.430 回答