gpt4 book ai didi

javascript - jQuery 的更改方法在这里做什么(如果有的话)?

转载 作者:行者123 更新时间:2023-11-28 19:03:55 25 4
gpt4 key购买 nike

我熟悉将处理程序附加到复选框的属性更改,如下所示:

$(function(){
$("#chkbox").change(function(){
alert($(this).val())
});
});

但是,执行此操作 $("#chkbox").change(); 将触发我的警报,但复选框的状态实际上不会改变,这告诉我 jQuery 只是触发已绑定(bind)到元素的处理程序。像 [bourbon.io][1] 那样调用它来关闭 its modal 有什么用? ?

$(".modal-fade-screen, .modal-close").on("click", function() {
$(".modal-state:checked").prop("checked", false).change();
});

如果我在最后省略 .change() ,模式仍然会关闭,并且似乎一切正常。链接 change() 有什么用?我问,因为我正在尝试将 Angular 与此模式一起使用,并且我需要调用关闭复选框的状态,以便我可以使用其他一些按钮关闭模式。 angular.element(".modal-state:checked").prop("checked", false); 似乎工作正常,但因为我不知道 change< 之类的东西 在 Angular 中 (它在 jQlite 中不存在),我想确定我没有遗漏任何东西。

最佳答案

如果将 change 事件监听器附加到元素,则每次用户触发该事件时,事件处理程序都会触发。但是,如果您以编程方式操作通常会触发事件处理程序的元素,则事件处理程序将不会触发。因此,您希望在进行更改后手动触发更改事件,以便触发事件处理程序。

$(".modal-state:checked").prop("checked", false).change();
//or $(".modal-state:checked").prop("checked", false).trigger('change');

链接change()有什么用?这完全取决于change事件处理程序的作用。

关于javascript - jQuery 的更改方法在这里做什么(如果有的话)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32053780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com