作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
HTML
<select multiple="multiple" id="myID" name="myName">
<option value="blue">blue</option>
<option value="red">red</option>
<option value="green">green</option>
</select>
jQuery:
$('select')
.change(function(){
alert("Change Event Triggered On:" + $(this).attr("value"));
})
这样就可以了。如果我单击多选中的某个项目,则会触发警报。
但是,当我通过 jQuery 从选择菜单中“选择”一个元素时,如下所示:
$('#myOtherSelector')
.click(function(){
var $matchingOption = [goes and selects the specific OPTION to toggle]
if ($matchingOption.attr("selected")){
$matchingOption.removeAttr("selected")
}else{
$matchingOption.attr("selected","selected");
}
})
该脚本的工作原理是更改 SELECTED 属性并以可视方式更新选项列表,但在这种情况下不会触发 onchange 事件。
这是为什么?
最佳答案
使用这样的代码更改元素不会触发事件处理程序。不过你可以自己做:
else {
$matchingOption.attr('selected', 'selected').trigger('change');
}
关于选择上的 jQuery 更改事件不会通过其他函数更改所选属性来触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2321408/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!