我使用Chtml :: dropdownlists创建了两个下拉列表,如下所示。
echo $form - > dropDownList($model, 'min_cost', Yii::app() - > params['cost_resales'],
array(
'empty' = > 'Choose one',
)
);
echo $form - > dropDownList($model, 'max_cost', Yii::app() - > params['cost_resales'],
array(
'empty' = > 'Choose one',
)
);
现在,上面的代码必须按照以下脚本工作
// Keep a copy of the default options
var $options = $('#SearchForm_min_cost').children().clone();
$('#SearchForm_min_cost').change(function(){
// Within your change handler:
var index = $(this).find(':selected').index();
$('#SearchForm_max_cost').html($options).children(':lt('+index+')').remove();
});
我用上面的代码创建了一个小提琴http://jsfiddle.net/E3mY2/1/。小提琴它工作正常。但是,我不知道如何调用脚本以使下拉列表工作
答案 0 :(得分:0)
在htmlOptions属性中给它们正确的id:
echo $form->dropDownList($model, 'min_cost', Yii::app()->params['cost_resales'],
array('empty'=>'Choose one', ) ,
array('id' => 'SearchForm_min_cost') // set id in htmlOptions
);
echo $form->dropDownList($model, 'max_cost', Yii::app()->params['cost_resales'],
array('empty'=>'Choose one', ),
array('id' => 'SearchForm_max_cost') // set id in htmlOptions
);
答案 1 :(得分:0)
首先检查在浏览器上查看视图后生成的ID是否正确或与脚本相同。然后,为了测试,将脚本放在脚本标记内的视图底部。
=========视图在此处结束=========== 确保在页面中添加了jquery文件。如果您的下拉菜单中的ID与脚本相同,那么在成功测试后,它将完全正常工作,并使用Yii重新编写您的脚本。
// Keep a copy of the default options
var $options = $('#SearchForm_min_cost').children().clone();
$('#SearchForm_min_cost').change(function(){
// Within your change handler:
var index = $(this).find(':selected').index();
$('#SearchForm_max_cost').html($options).children(':lt('+index+')').remove();
});