我有下一个带有Select
的代码:
http://jsfiddle.net/pdkg1mzo/18/
问题是尽管单击select
的{{1}}是当前选择的option
option
,但我想每次单击都会启动警报
答案 0 :(得分:1)
这可能有效:
$(function(){
$(".normal").on("change",function(){
//alert("trigger");
var selectedName = $('#selectId').find(":selected").text();
console.log('selectedName is: ', selectedName)
alert(selectedName)
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="normal" id="selectId">
<option value="18">John</option>
<option value="18">Lorry</option>
<option value="19">Jerry</option>
<option value="20">Smith</option>
</select>
您可以为警报添加半秒的延迟,以便在选择后显示名称:
$(function(){
$(".normal").on("change",function(){
//alert("trigger");
var selectedName = $('#selectId').find(":selected").text();
console.log('selectedName is: ', selectedName)
setTimeout(function () {
//do something once
alert(selectedName)
}, 500);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select class="normal" id="selectId">
<option value="18">John</option>
<option value="18">Lorry</option>
<option value="19">Jerry</option>
<option value="20">Smith</option>
</select>
答案 1 :(得分:0)
尝试一下
$(function(){
$(".normal option").on("click",function(){
alert("trigger");
});
});
答案 2 :(得分:0)
尝试一下,
<select class="normal" name="mysel" onChange="show(this);">
<option value="18">John</option>
<option value="18">Lorry</option>
<option value="19">Jerry</option>
<option value="20">Smith</option>
</select>
纯javascript
<script>
function show(m){
var k=m.options[m.selectedIndex].value;
alert(k);
}
</script>
尝试一下,它非常有用。
答案 3 :(得分:0)
我认为您无法执行此操作,但是也许可以尝试选择:https://plugins.jquery.com/chosen/。 我不知道为什么要这样做,是否要重新加载页面,加载Ajax结果。也许这对于用户体验来说是不必要的,您根本不会改善它。