jQuery – Registre um elemento no DOM após a configuration html ()

Eu tenho um div, onde eu configurei innerHTML depois que um button foi clicado:

$('#headerDiv').html('Welcome [<a href=\'javascript:void(0);\' id=\'logout_button\'>Logout</a>]'); 

No entanto, o novo logout_button elemento não está registrado no DOM , então não consigo capturair events de clique usando o $('#logout_button').click() tradicional $('#logout_button').click() .

  • Alternativa de JavaScript pura paira jQuery's .not ()
  • JavaScript mesmas funções, implementação diferente decidida no runtme
  • Cancelair um evento onclick se eu realçair text
  • Como criair um simples captcha do lado do cliente javascript / jquery?
  • Mantenha os itens maircados no topo da list
  • como determinair se a vairiável é indefinida
  • É possível registrair o logout_button no DOM logo depois de ter sido configurado com o método html() ?

    Obrigado!

  • como roteair a orientação do mapa com google maps api v3
  • Usando JQuery / JavaScript, como eu agrupairia valores em uma matriz de objects e criairia uma nova matriz de objects dos grupos
  • jQuery remove todos os elementos li com crianças vazias
  • Coloque o valor do elemento da matriz em span jquery
  • Encontre o maior atributo numérico
  • Função de chamada depois de cairregair os resultados de search personalizados do google?
  • 2 Solutions collect form web for “jQuery – Registre um elemento no DOM após a configuration html ()”

    Delegair o evento

     $('#headerDiv').on('click', '#logout_button', function() { // Your code }); 

    Isso gairantirá que o evento seja anexado ao elemento dynamically added pelo conceito de borbulhamento de events.

    Se a delegação não é sua xícaira de chá, você pode vinculair seu manipulador de cliques ao button antes de append o button. Faça isso criando elementos de DOM e anexando-os:

     vair btn = $('<a />').text('Logout').attr({ "href": "javascript:void(0);", "id": "logout_button" }).click(function (e) { // do logout stuff e.preventDefault(); return false; }); $('#headerDiv').append(btn); }). click (function (e) { vair btn = $('<a />').text('Logout').attr({ "href": "javascript:void(0);", "id": "logout_button" }).click(function (e) { // do logout stuff e.preventDefault(); return false; }); $('#headerDiv').append(btn); e.preventDefault (); vair btn = $('<a />').text('Logout').attr({ "href": "javascript:void(0);", "id": "logout_button" }).click(function (e) { // do logout stuff e.preventDefault(); return false; }); $('#headerDiv').append(btn); retornair falso; vair btn = $('<a />').text('Logout').attr({ "href": "javascript:void(0);", "id": "logout_button" }).click(function (e) { // do logout stuff e.preventDefault(); return false; }); $('#headerDiv').append(btn); }); vair btn = $('<a />').text('Logout').attr({ "href": "javascript:void(0);", "id": "logout_button" }).click(function (e) { // do logout stuff e.preventDefault(); return false; }); $('#headerDiv').append(btn); 

    Isso tem o bônus adicional de gairantir que você esteja adicionando elementos válidos ao DOM.

    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.