2016-07-05 63 views
0

我有一个JavaScript部分的视图。在这个视图中,我有一个onclick事件的JavaScript,点击一个标签点击加载部分视图,这一切都完美的作品。javascript点击不能部分视图加载后触发

现在我知道javascript上的部分视图将无法正常工作,所以在主视图中,我想添加一个单击事件,当打印按钮被点击时。

<script type="text/javascript"> 
    $(function() { 

     $('#printBtn').click(function() { 
      debugger; 
      printElement(document.getElementById("modal-body")); 
      window.print(); 
     }); 

     $('#tabStrip a').click(function (e) { 
      e.preventDefault() 
      var tabID = $(this).attr("href").substr(1); 

      $(".tab-pane").each(function() { 
       $(this).empty(); 
      }); 

      $("#" + tabID).empty().append("<div class='loader'><img src='/Content/img/Loader/ajax-loader.gif' alt='Loading' /></div>"); 

      $.ajax({ 
       url: "/Account/CustomerTab", 
       data: { Id: tabID }, 
       cache: false, 
       type: "get", 
       dataType: "html", 
       success: function (result) { 
        $("#" + tabID).empty().append("<div id='replaceDiv'>" + result + "</div>"); 
        $(document).trigger('ready'); 
        debugger; 
       } 
      }); 
      $(this).tab('show') 
     }); 
    }); 
</script> 

所以选项卡中单击完美的作品,但一旦我的部分观点被加载,然后打印按钮调试器不会受到打击。这是我的局部视图中的按钮。

<button id="printBtn" type="button" class="btn btn-default">Print</button> 
+0

我发现,如果我添加了click事件对AJAX成功,然后将其添加并触发。在部分加载完成后,我怎么能告诉dom再次准备好? – JcMey3r

+0

如果将其更改为.on,它会起作用吗? $('body')。on('click','printBtn',function(){ debugger; printElement(document.getElementById(“modal-body”)); window.print(); }); –

回答

1

试着改变你的函数clickhandler到这样的事情:

$(document).on('click','#printBtn', function() { 
    //your code here 
    }