Moonless.net首页

Cutsin受难记

Home Blog 归宿美林湾 Labs

2006年8月18日星期五

Firefox中动态create的表单项post后无法传递参数的错误一例

在以前的教材和实际应用里,应该很常见这种类型的嵌套:

<table>
<form>
<tr><td></td>
</tr>
</form>
</table>

目的无非是不想让form的margin和padding撑出不应有的空白,而这样做一直以来也都是有效的,在IE中无论是动态create出的表单项还是原有的内容都能被正确地传递,虽然这样是不符合DOM规范的。

在Firefox中,上面的嵌套也能正确地传递事先定义的表单参数,但是如果使用DOM创建新的表单项,新的Node无法与未按标准嵌套的form建立关联,所以post数据的时候它是不会被传递的。

需要的改动仅仅是让结构更清晰:
<form>
<table>
<tr><td></td></tr>
</table>
</form>
现在我们只需要把form的margin和padding设为0,无需杂乱无可辨认的可恶嵌套。

感谢标准化带给我们的一切。

标签:

收藏到网摘:新浪VIVI  365Key  POCO网摘  和讯网摘  我摘

0 条评论:

发表评论

订阅 博文评论 [Atom]

<< 主页