如何根据单选按钮选择显示表单元素

时间:2014-06-03 14:07:02

标签: php yii

我正在创建一个新的应用程序,我在设计一个表单,其中元素根据radiobuttonlist的选择而不同。 例如 - 我有一个radiobutton列表 - 性别和选择是男性和女性。

男性: 表单的下一个元素是textfield Extra Curricular activities:,学生可以输入柔道,空手道等类型。

女性: 表格的下一个元素是下拉菜单课外活动:有舞蹈,芭蕾舞等选项 根据上述单选按钮的选择,应显示下一个元素,输入的数据将转换为JSON格式并存储在数据库中。

现在,为了达到这个目的,我将dropdownlist中的相同字段放在一个div中,将textfield放在另一个div中。我使用jQuery分别隐藏和显示div。

注意 - 课外活动用作男性儿童的文本字段和女性儿童的下拉菜单。 我做得对吗?

1 个答案:

答案 0 :(得分:0)

这感觉有点hacky,但这是一个例子:

http://jsfiddle.net/3s8wM/

here's my "accompanied code" to make SO happy about jsfiddle links :P

我在这里所做的基本上就是你已经在做的事情,不同之处在于我将你不希望发布的元素移动到隐藏的div中。

但我的建议是以不同的方式做到这一点。为什么在男性选项完全开放的情况下将女性选项限制为下拉?我认为你在这里遇到麻烦 - 你不希望你的用户觉得你对任何性别都有偏见。

我会选择男性和女性的下拉菜单以及额外的“其他......”选择。如果他们选择该选项,则显示textarea以便他们添加活动。这样,您将拥有相同的表单元素来处理男性或女性,并使您的开发更容易和更易于维护。

修改

回答你的问题“这是正确的方法吗?”,我想不会。由于你有textarea和select元素同名,你的$ _POST变量可能会得到奇怪的结果,这就是为什么我选择将元素移到表单之外,如果你不打算在你使用它们时处理$ _POST变量。