请帮帮我。我有一个表单,其中包含类selectpicker
。
每当用户选择.selectpicker
中的任何值时,我都需要运行JS。那可能吗?有什么方法吗?
我在加载时有以下脚本:
$(window).on('load', function () {
$('.selectpicker').selectpicker({
'selectedText': 'cat'
});
// $('.selectpicker').selectpicker('hide');
});
但我还需要使用.selectpicker
形式的选择值来执行此操作。
<div class="field field-manufacture">
<label>Výrobce</label>
<select n:name=manufacturer class="selectpicker" data-style="btn">
</select>
</div><!-- /.field -->
<div n:snippet=searchSnippet class="field field-model">
<label>Model</label>
<select n:name=model class="selectpicker" data-style="btn">
</select>
</div><!-- /.field -->
Snippet依赖于第一个制造商,因此当我从第一个选择时,第二个selectpicker正在从数据库重新加载数据并更改CSS样式 - 所以我需要再次运行第一个脚本。
jquery版本:1.10.2
谢谢!
- 编辑,添加了AJAX:
<script>
{include #jsCallback, input => manufacturer, link => firstChange}
</script>
{define #jsCallback}
$('#{$control["searchForm"][$input]->htmlId}').on('change', function() {
$.nette.ajax({
type: 'GET',
url: '{link {$link}!}',
data: {
'value': $(this).val(),
}
});
});
{/define}
答案 0 :(得分:0)
尝试
$('select').change(function(){
// logic goes here
var value = $(this).val();
});