当从选择框中选择一个值时,我尝试调用一个函数。我还会选择一个默认值,并在页面上为该值显示一个按钮。
这是我的选择框:
<select id="messagingMode" class="bootstrap-select" >
<option value="1" selected="selected">Webhooks messaging</option>
<option value="2">Real time messaging</option>
</select>
这是js:
$('#messagingMode').on('change',showCorrespondingAuthorizationBtn(this));
并且该函数暂时只打印选定的值:
function showCorrespondingAuthorizationBtn(select) {
console.log(select.val());
}
控制台中没有打印任何内容,为什么这不起作用?
最佳答案
尝试直接调用 function name
而不是 function()
。在更改函数中默认与 this
绑定(bind)
$('#messagingMode').on('change',showCorrespondingAuthorizationBtn);
function showCorrespondingAuthorizationBtn() {
console.log($(this).val());
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="messagingMode" class="bootstrap-select">
<option value="1" selected="selected">Webhooks messaging</option>
<option value="2">Real time messaging</option>
</select>
关于javascript - 为什么选择更改方法不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44342129/