有时我遇到以下问题:
我在客户端使用asp.net和JQuery。例如,我想根据复选框的状态显示/隐藏texbox。我写这样的东西:

   $(function() {

       $('#<%=chbMyCheckbox.ClientID %>').click(function(event) {

           if (this.checked) {
             $('#txFirstAid').show();
           } else {
             $('#txFirstAid').hide();
           }
       });
   });


工作正常。但是我也想在页面刚刚加载时运行此代码。当然,我可以将代码移到单独的函数中,如下所示:

   $(function() {
         myFunc();
       $('#<%=chbMyCheckbox.ClientID %>').click(function(event) {
           myFunc();

       });

          function myFunc()
          {
           if (this.checked) {
             $('#txFirstAid').show();
           } else {
             $('#txFirstAid').hide();
           }
          }
   });


问题是:是否有可能不将代码移到其他位置,而编写类似这样的内容

$('#<%=chbMyCheckbox.ClientID %>').click(function(event).onloadEvent()
{
    bla-bla
}

最佳答案

您可以使用jquery的trigger()方法来触发click事件onLoad。

例如,注册一个点击事件:

$('#someElement').on('click', function () { console.log('I BE CLICkED') });

触发它:

$('#someElement').trigger('click');

您可以使用trigger()触发任何事件以及触发自定义事件。 (允许您绑定到插件等触发的事件。

The full trigger documentation is here,这是有关使用custom events in jquery的好帖子

关于jquery - jQuery的“onclick”事件加上“onload”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10653038/

10-12 01:10
查看更多