我在PHP Zend中有一个下拉列表,其中包含以下代码:
$this->addElement('select', 'target', array(
'decorators' => $this->getElementDecorators(),
'label' => Zend_Registry::get('Zend_Translate')->translate('Target_Platform'),
'style' => 'width:320px;',
'data-help' => Zend_Registry::get('Zend_Translate')->translate('Target_Platform_To_Publish_To'),
));
这有一个大约14个值的列表。
我在JS文件中使用下面的代码来获取CURRENT下拉值:
this.temp = $('#target :selected').text();
console.dir(this.temp);
但是,当我在下拉列表中选择其他值时,此变量中的值不会更改? 我希望变量根据用户选择的值更改动态。
怎么可能? 感谢阅读:)
答案 0 :(得分:0)
您可以使用.select
事件来执行此操作。
$(document).ready(function(){
$("#target").select(function(){
console.log($(this).val());
});
});
我希望您已包含jQuery
个文件
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
修改强>
<body>
.....
// At the end of the body because JS loads Synchronously
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
</script>
$(document).ready(function(){
$("#target").select(function(){
console.log($(this).val());
});
});
</script>
</body>
答案 1 :(得分:0)
这很有用。
$('#target').on('change', function () {
var data = {
platform: $('#target :selected').text()
};
console.log(data);
答案 2 :(得分:0)
尝试将this.temp = $('#target :selected').text();
绑定到某个事件(.select),因此当事件被触发时,将执行所需的代码。从当前的方法来看,this.temp = $('#target :selected').text();
只有在加载文档时才会执行,并给出默认值。