0

我创建了一个菜单,它只是一系列 DIV,并且正在使用以下代码

$(".menu_item").click(function(){
    window.location = $(this).attr("data-href");
return false;
});

使每个项目的整个 DIV 都可点击。我有一个“容器”DIV 设置,内容最初是通过 php-include 加载的,但希望在单击不同的菜单项时加载不同的内容。

我知道我可以使用 JQuery.load 将外部文件加载到特定的 DIV 中,但看起来这意味着为每个链接编写单独的 jquery 实例?如果可能的话,我也宁愿坚持使用 php 包含。我可以使用 jquery.load 通过 php include 加载吗?

任何有关如何实现这一目标的帮助将不胜感激。

这是其余的代码:

/* Menu Item */
<div class="menu_item" data-href="link1.html">
     Link 1
</div>

/* Container to load link into */         
<div id="myContentDiv"></div>
4

2 回答 2

1

您可以使用 jQuery AJAX 速记方法load()发出 ajax 请求,并在完成时使用响应填充元素

$(".menu_item").click(function(e){
   var url= $(this).data('href')
    $('#myContentDiv').load( url);
     return false;/* edit to prevent browser following link*/
  });

API 参考: http ://api.jquery.com/load/

于 2012-10-10T11:12:59.247 回答
0
  $(".menu_item").click(function(e){
    e.preventDefault();
    $.ajax({
      url: $(this).attr("data-href"),
      context: $('#div-to-replace-content')
    }).done(function(data){
      $(this).append(data);
    });
  });
于 2012-10-10T10:48:50.293 回答