我正在尝试使用简单的jquery代码设置下拉选项:
$('option[value="1"]').attr('selected', 'selected').change();
及其在Chrome和Firefox上的正常工作,但在Safari上却不能。
任何人,请帮助解决这个奇怪的问题。预先感谢。
$(document).ready(function(){
$('#btn').click(function(){
$('option[value="1"]').attr('selected', 'selected');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="dd">
<option value="">Select</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<input type="button" value="click me" id="btn" />
答案 0 :(得分:2)
<option>
标签上的跨浏览器不支持事件。您在IE和其他浏览器中也会遇到相同的问题。尝试隐藏<option>
设置<select>
的值并触发其更改
$('#btn').click(function() {
$('#dd').val('1').change();
});
$('select').change(function() {
console.log(`Select #${this.id} was changed to ${this.value}`)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="dd">
<option value="">Select</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<input type="button" value="click me" id="btn" />