2012-01-11 92 views
0

我需要创建一个具有2(是/否)选项的表单,并且如果用户单击其中一个选项,那么他应该得到一个折叠子表单,其中包含有关该特定选择的更多细节。如果他选择了其他选项,那么他应该得到另一个具有相关信息的折叠子表单。我知道我们必须使用JavaScript或Jquery(以获得崩溃效果),但我对这两者都是新手。任何简单的教程或信息初学者非常感谢。 PS:我已经看到很多关于这个要求的问题,但事实是我作为初学者很难理解它们。创建动态表单

感谢,

回答

3

基本上,你将需要包装在div的两个不同的子表单,然后使用jQuery的.show()和.hide()函数来显示和隐藏他们权当单选按钮被点击。

这里是关于在显示和隐藏一个有用的教程:http://papermashup.com/simple-jquery-showhide-div/

编辑:用于用户更具体的答案..

$(document).ready(function(){ 
    $("#check-box").click(function(){ 
    if($(this).is(':checked')) { 
     $('#div1').show(); 
    } else { 
     $('#div1').hide(); 
    } 
    }); 

});

+0

谢谢!这真的有帮助 – uday 2012-01-11 18:10:39

+0

没问题!我会永远感谢你将它标记为回答你的问题,如果你认为它的确如此,但无论如何,我很乐意帮助你! – 2012-01-11 18:13:12

+0

嘿杰西,我想显示的div如果用户选择1单选按钮到其他。但它不工作的方法'.click'支持检查或单选按钮?或者有一些其他的材料,比如'if value =“1”,然后show()'就像那样......你的链接很有帮助,但是我找不到复选框和单选按钮的方法。你能帮我解决吗? – uday 2012-01-12 20:14:50

3

您必须呈现整个表单并隐藏所有子表单,每个表单都具有不同的ID。根据按钮/选择按下时,你调用相应的div$.show()有这样的代码:

$("#choice1_subform").click(function(){ 
    $("#div1").show(); 
}); 
+0

谢谢,难道我不应该使用hide()函数吗?像Jesse Pollak所描述的那样? – uday 2012-01-11 18:04:53

+0

是的。如果你点击另一个选项,它应该'隐藏()'以前的子窗体并显示另一个。 – Karlisson 2012-01-11 18:07:54

+0

我在firebug中得到一个错误,说$没有在'$(“#element_4_1”)行中定义。click(function(){'你能告诉我我错的地方吗 – uday 2012-01-11 20:33:33