javascript - 动态加载 HTML 的 Onclick 监听器

标签 javascript ajax onclick onclicklistener

我正在尝试使用 JavaScript 动态加载菜单,然后在加载菜单元素后将 onclick 事件监听器设置为菜单元素。我似乎不知道该怎么做。我通过 AJAX 调用加载菜单,菜单内容加载正常,但当我单击菜单元素时,没有发生任何事情,就像我期望的那样。

这是我的代码部分,我预计这会是原因......

//Load Menu and main images
window.onload = function()
{
    load_menu();   
}

document.getElementById('menu').onload = function()
{
    document.getElementById('projects-button').onclick = load_projects_view();
}

//Load menu function
function load_menu()
{   
    request = getHTTPObject();
    request.onreadystatechange = append_menu;
    request.open("GET", "./php/menu.php", true);
    request.send(null);
}

//Load Project View
function load_projects_view()
{
    request = getHTTPObject();
    request.onreadystatechange = append_project_view;
    request.open("GET", "./php/project_view.php", true);
    request.send(null);
}

最佳答案

删除这个。

document.getElementById('menu').onload = function()
{
    document.getElementById('projects-button').onclick = load_projects_view();
}

并将其放在 append_menu() 的底部。

    document.getElementById('projects-button').onclick = load_projects_view;

关于javascript - 动态加载 HTML 的 Onclick 监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15928695/

相关文章:

javascript - 分组 collada 模型 onload Three.js

javascript - HTML/CSS 自动编号标题?

javascript - Ajax 发布后页面重新加载

ajax - ajax加载页面中的facebook “Like box”只加载第一次?

javascript - 如何阻止 Kendo UI MultiSelect 在点击时打开?

javascript - 好的编程,我应该重用值吗?

javascript - 在javascript中获取没有子内容的元素文本

javascript - $.ajaxSetup 不工作

javascript - jQuery - 无法将类添加到具有 onClick 事件的按钮

php - 在php中显示图像onclick