【问题标题】:Click link in DIV and show PHP/HTML in separate DIV单击 DIV 中的链接并在单独的 DIV 中显示 PHP/HTML
【发布时间】:2012-04-10 07:55:44
【问题描述】:

我有一个更改的菜单,我想根据与在 DIV class="items" 中选择的项目关联的链接在 DIV id="main_content" 中显示内容

这是我正在使用的 jQuery 代码(已编辑

<script type="text/javascript">
$(document).ready(function(){
    $(".items a").click(function(e){
        e.preventDefault(); 
        $("#main_content").load($(this).attr("href"));
    });
});

</script>

这段代码在逻辑上似乎是正确的,我在这里发布之前已经进行了广泛的搜索。这个问题/帖子是对构建代码最有帮助的问题之一:Clicking a link display it in Different Div on Same Page

点击链接后,它会在新标签页中打开。所以我的问题是,为什么这不起作用?

我愿意接受除 jQuery 之外的其他建议。任何帮助将不胜感激。

谢谢!

编辑:

好的,经过反复试验,我发现另一个脚本导致了问题。我使用下面的脚本使整个 DIV 成为可点击的链接。

<script type="text/javascript">
 $(document).ready(function(){ 
  $(".items").click(function(){
     window.location=$(this).find("a").attr("href");
     return false;
  })
 });
</script>

我可以同时使用这两个脚本吗?

【问题讨论】:

  • 那么问题是什么?你有任何错误吗?你试过用控制台调试吗?
  • 请出示您的 HTML。如果您的href 指向不同的站点,您将无法.load() 它;你需要一个 iframe。
  • 对不起...我的问题是,为什么这不起作用?我将编辑以包含问题。
  • @mblase75,该页面是同一站点的一部分并且在同一目录文件夹中
  • 开发者工具中的控制台是否出现任何错误?

标签: jquery


【解决方案1】:

是的,代码看起来是正确的(不看标记)。附带说明一下,如果您想阻止默认操作并阻止事件传播,您可以只 return false;。我建议您只使用e.preventDefault(),除非您真的需要阻止事件传播。

【讨论】:

  • 我已更新我的问题以包含我正在使用的 HTML。感谢您的提示
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-17
  • 1970-01-01
  • 2016-05-19
  • 1970-01-01
  • 2021-10-26
  • 1970-01-01
  • 2013-09-21
相关资源
最近更新 更多