我正在为一个房产网站(使用CakePHP)创建一个表单,该表单允许用户搜索特定的属性。我有两个带有选项的单选按钮:'商业'和'住宅'
<?php
echo $this->Form->input('channel',
array(
'before' => '<label data-channel="commercial" . ($this->request->query('channel') != 'commercial' ? ' active' : '') . '">',
'after' => '</label>',
'separator' => '</label><label data-channel="residential" . ($this->request->query('channel') == 'commercial' ? ' active' : '') . '">',
'options' => array(
'commercial' => 'Commercial',
'residential' => 'Residential'
),
'type' => 'radio',
'hiddenField' => false,
'value' => $this->request->query('channel') == 'residential' ? 'residential' : 'commercial'
)
);?>
默认情况下选择商业广告并显示以下字段:位置,类型,大小和租金。
当选择住宅时,我想隐藏:类型,大小和租金,然后显示:床。
基本上我想根据点击次数显示/隐藏不同的表单字段。无线电选择住宅或商业
答案 0 :(得分:0)
你想要做的事情必须在javascript方面完成。
首先,您要在输入字段中添加id
,以便在javascript中轻松选择
然后做这样的事情:
radioInput.change( function() {
if (this.val() == 'residential') {
typeInput().hide();
sizeInput().hide();
rentInput().hide();
bedsInput().show();
} else {
typeInput().show();
sizeInput().show();
rentInput().show();
bedsInput().hide();
}
});
注意:这只是一个草图,你需要做什么,并假设你正在使用JQuery。您仍然必须获取输入字段radioInput = $('#radioInput');
,确保最初只显示相应的字段等等...
希望这足以引导你朝着正确的方向前进。