jQuery:是否有一个类似于change()的标签也在页面加载时运行

jQuery: Is there a tag like change() that also runs on page load?

本文关键字:加载 运行 标签 有一个 是否 类似于 change jQuery      更新时间:2023-09-26

我有一组单选按钮,如果选择了一个特定的值(通过.change()),则触发jquery函数

然而,在某些情况下,该值将在页面加载时默认选择。目前,我有两个独立的函数—一个在.change()事件中,另一个在页面加载时运行。我想清理这一点,所以:是否有一个事件运行时,一个值被改变,并在页面加载?

干杯…

您可以在页面加载时触发change事件-

$(document).ready(function()
{
    $("#myradioButton").trigger('change');
});

不可以,但是可以使用相同的处理程序。

$(document).ready(function() {
    radioChangeHandler(); // Call it when the DOM is ready
    $('...').change(radioChangeHandler); // Attach it to the radio buttons
});

您可以在服务器(或客户端)上发送取消选择的默认值,并且在绑定更改处理程序之后,您可以调用:

   $('#radio').change();

换句话说,整个过程是:

 $(function(){
     // deselect the default value
     $('#radio').removeAttr('checked');
     // binding radios
     $('#radios').change(function(){});
     // Changing the value of the default radio
     $('#radio').attr('checked', 'checked');
 });

通常的方法是在单独的函数中进行调用,并从两个地方调用它。没有什么是你想打电话就可以打电话的。

是的,在两个地方有相同的调用确实感觉有点不整洁,但它们有不同的方法。change方法响应的是控制事件,而pageload响应的是正在加载的页面。

您可以在页面加载时使用$(".radio").triggerHandler("change")之类的东西来触发事件处理程序而不改变状态