JQuery“onclick”事件加上“onload”

时间:2012-05-18 12:53:02

标签: jquery

有时候我会引发以下问题: 我在客户端使用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
}

2 个答案:

答案 0 :(得分:5)

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

例如,

注册点击事件:

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

触发它:

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

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

The full trigger documentation is here,这是关于使用custom events in jquery

的好帖子

答案 1 :(得分:0)

渲染页面时如何在服务器上隐藏文本框?因此用户在domready之前无法看到文本框。