簡體   English   中英

ASP.Net用戶控件中的JQuery自定義事件

[英]JQuery custom event in ASP.Net User Control

我有一個包含一些復選框的ASP.Net用戶控件,並且當單擊其中一個復選框時,我想使用JQuery從用戶控件中引發事件。 這是用戶控件中我要引發事件的JQuery代碼:

         $(document).ready(function() { 
            $(':checkbox').click(function(){
               $('#hfRemainingInstalls').trigger('CheckBoxClicked');
            });
         });

這是我試圖訂閱該事件的包含aspx頁面中的JQuery代碼:

          $(document).ready(function() {
              $("p").bind('CheckBoxClicked', function(e) {    
                 alert("checkbox clicked");       
             });
          });

當我單擊復選框之一時,我再也看不到警報。 有人知道這可能是什么問題嗎?

那么Id標簽P和Id hfRemainingInstalls之間是否有關系

1:解決方案

$(':checkbox').click(function(){
    $("p").trigger('CheckBoxClicked');
});

$(document).ready(function() {
  $("p").bind('CheckBoxClicked', function(e) {    
     alert("checkbox clicked");       
  });
});

2:解決方案

$(':checkbox').click(function(){
    $("#hfRemainingInstalls").trigger('CheckBoxClicked');
});

$(document).ready(function() {
  $("#hfRemainingInstalls").bind('CheckBoxClicked', function(e) {    
     alert("checkbox clicked");       
  });
});

我確定您有ID問題。 呈現在諸如UserControls和MasterPages之類的容器元素內部的ASP.NET控件在呈現時會在id屬性前添加一些垃圾,以確保唯一性。 通常是類似“ ctl01_01_YourID”這樣的內容,也就是說,您可能應該使用jQuery startsWith選擇器...

$('input[id$=hfRemainingInstalls]').trigger('CheckBoxClicked');

如果找到該元素,以下內容將發出“ true”警報...

alert($('#hfRemainingInstalls').length > 0);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM