如何在JS'display:none'技巧中完全禁用表单选项?

时间:2011-01-10 19:03:14

标签: php javascript hidden-field

我有一个包含来自各种选择下拉菜单的多个输入值的表单。例如:

会员有3个选择:

你最喜欢的颜色:1)红色; 2)蓝色,3)绿色。

如果选择的收藏颜色为红色,请使用javascript show()显示带有下拉元素的新div,要求选择一组新选项(依此类推蓝色和绿色)。

我能够轻松地做到这一点,但我遇到的问题是使用其他表单字段名称。例如,无论上面的选择如何,每个选项都会提示用户在textarea中输入解释其选择的信息。我想命名这个文本区域:“解释”。如果由上面选择1的成员填写说明,则选择3的隐藏说明字段将覆盖该值,从而迫使我创建“解释1”,“解释2”,“解释3”......

这是我想要完成的简化版本,但最终,我不希望某些POST变量在隐藏的DIV中从一页到另一页。这可能吗?

谢谢!

修改

我发现this article给出了禁用输入元素的一个很好的解释,然而它并没有达到我的基础,即我希望有多个具有相同名称的输入元素,但只出现在各种选择中(所以解释只有在选择1,2,3和2,4但只是因为2,4不满足时才有效,因此不应将'解释'设置为禁用)

2 个答案:

答案 0 :(得分:2)

如何将其他字段(隐藏字段)设置为禁用?这样他们的价值就不会与你表格的其他部分一起发布。

因此,在你决定显示哪个div-with-dropdown的if-block中,只需添加:

$('#div1 .explanation, #div2 .explanation').attr('disabled', true);

根据您的评论更新了答案。只需在答案中添加一个类,即可以使用相同的名称。但是,请确保您没有给他们相同的ID。这是无效的HTML。

答案 1 :(得分:-1)

男人,如果你使用Jquery,这是一个非常简单的JavaScript库。一个例子......

点击一下,就会出现一个输入......

$("#btn")click( function(){
    $("#inputID").css({'diplay':'block'});
});

您将使用Jquery解决您的问题..访问该网站以了解更多信息... http://www.jquery.com