2011-10-17 44 views
20

如果在包含表单元素的<div>上使用jQuery的toggle(),这些表单元素是否会与表单一起提交,即使它们是隐藏的?隐藏的表单元素是否被提交?

我的代码(虽然可能不需要这个特定的问题):

$('.cms_loop_title').click(function(){ 
    $ctg = $(this).attr('rel'); 
    $('.'+$ctg).toggle(); 
    //alert($ctg); 
}); 

回答

19

为了防止提交,您必须禁用这些元素。隐藏并不能解决问题(前段时间我有同样的问题)

23

是的,他们会得到提交的,除非它们从文档中删除或有disabled属性对他们设置。

欲了解更多信息,请参阅HTML5工作草案— Section 4.10.22.4 Constructing the form data set。这些信息或多或少与以前的HTML版本相同。

+2

从DOM中删除它们也会阻止它们被提交,但切换只是用CSS隐藏它们。 –