0

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

会员有 3 个选择:

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

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

我可以轻松地做到这一点,但是我遇到的问题是使用附加的表单字段名称。例如,无论上面的选择如何,每个选择都会提示用户在文本区域中输入信息来解释他们的选择。我想给这个文本区域命名:“解释”。但是,如果解释是由上面选择 1 的成员填写的,那么选择 3 的隐藏解释字段将覆盖该值,从而迫使我创建“explanation1”、“explanation2”、“explanation3”......

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

谢谢!

编辑

我发现这篇文章很好地解释了禁用输入元素,但是它并没有达到我的基本基础,即我希望有多个具有相同名称的输入元素但只出现在各种选择中(所以解释仅在以下情况下才有效选择是 1,2,3 和 2,4,但仅仅因为 2,4 不满足,'解释'不应该因此设置为禁用)

4

2 回答 2

2

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

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

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

根据您的评论更新答案。只需在答案中添加一个类,这样它们就可以具有相同的名称。不过,请确保不要给他们相同的 ID。那是无效的 HTML。

于 2011-01-10T19:04:55.823 回答
-1

伙计,如果您使用 Jquery,一个 JavaScript 库,这将非常容易。一个例子...

单击时,将出现一个输入...

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

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

于 2011-01-10T19:11:44.767 回答