表格形式和形式表没有出现

时间:2011-07-26 16:08:02

标签: html forms html-table

我在表格中有一个表格,在另一个表格内。我的问题是嵌入的表单标签没有出现 - 输入和iframe出现,但表单标签没有出现。表格和外部表格出现。怎么了?

<form>
    <table id=\"mytableid\">
        <tr class=\"form_row\">
            <td align=\"right\">
                Upload&nbsp;Photo: 
            </td>
            <td align=\"left\">
                <form action=\"/myuploadpath\" method=\"post\" enctype=\"multipart/form-data\" target=\"upload_target\" id=\"photo_url_upload_form\" name=\"venue_photo_url_upload_form\">
                    <input type=\"file\" name=\"photo_url\" id=\"photo_url\"  size=\"40\" />
                    <iframe id=\"upload_target\" name=\"upload_target\" src=\"#\" style=\"width:0;height:0;border:0px solid #fff;\"></iframe>
                </form>
            </td>
        </tr>
    </table>
</form>

2 个答案:

答案 0 :(得分:5)

将表单放在另一个表单中是无效的HTML。发生这种情况时,每个浏览器都会对标记执行不同的操作。有些人会忽略部分,有些会破坏等等。无论哪种方式,你都不应该这样做。

修改

如果您使用表格进行布局,那么从技术上讲,您不应该这样做。它们仅用于表格数据。您应该使用div / span和CSS在您的网站上创建您想要的外观。了解这些内容的好地方是W3C Schools

答案 1 :(得分:1)

我假设您正在使用类似Firebug或Chrome DOM Inspector的内容来查看您的DOM树,而您无法看到内部<form>。这些工具检查DOM本身,而不是HTML源。也就是说,它们会向您显示浏览器从HTML中解释的内容。在这种情况下的问题是将<form>嵌套在另一个<form>中是无效的,因此浏览器忽略了它并继续解析文档的其余部分。

显然,修复是放弃外形,因为它没有做任何事情。如果你有它用于造型目的,也许使用<div>与类。