jquery - 避免 jquery 中的多个加载函数

标签 jquery load

我有一个包含 50 项的 ul。有没有办法可以不用写下面的50个?

$(function(){
$("#nav_a").on("click", function(){
    $("#main_text").load("pageA.html #main_text");  
});
$("#nav_b").on("click", function(){
    $("#main_text").load("pageB.html #main_text");  
});    
$("#nav_c").on("click", function(){
    $("#main_text").load("pageC.html #main_text");  
});

最佳答案

使用starts-with选择器^=id上的split来获取字母:-

$(function() {
  $('[id^="nav_"]').on("click", function() {
    var letter = this.id.split('_')[1];
    $("#main_text").load("page" + letter + ".html #main_text");
  });
});

如果你想保留大写,那么+ letter.toUpperCase() +

关于jquery - 避免 jquery 中的多个加载函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37012200/

相关文章:

jquery - Safari 不采用添加类的过渡属性

javascript - 如何在光标下的所有元素上调用 mouseover?

c# - AppDomain.Load() 的有趣错误

MySQL和Hibernate同时读写

javascript - 复杂的 jquery 选择,还涉及自定义 xml 标签

javascript - 使 ul 列表像选择输入一样工作

javascript - 如何在 jQuery 中单击时查找 data-* 属性值?

javascript - 自动加载新页面,仅访问正文中的元素

groovy - 从groovy脚本加载脚本

Angular AppComponent 在子组件之后加载