javascript - 获取url的最后一部分

标签 javascript jquery

尝试以相当奇怪的 html 结构获取 url 的最后一部分。不要问为什么要这样 build 。这背后有一个很好的理由。

html 看起来像这样

<li class="lifilter"><input type="checkbox" class="filtercheck" id="Cheeks...">
   <label for="Cheeks...">
      <a href="/collections/cheeks">Cheeks</a>
   </label>
</li>

以及我正在尝试使用的js

$('#Cheeks... label a').each(function(){
      var lasturl = $(this).attr('href');
      var urlsplit = url.split("/");
      var finalvar = urlsplit[4];
      $(this).addClass(finalvar);
});

编辑:该死的..我只能每 90 分钟发一次。 这是更新后的问题和更新的 html

 <li class="lifilter">
    <input type="checkbox" class="filtercheck" id="Cheeks...">
    <label for="Cheeks...">
         <a href="/collections/cheeks" class="cheeks">Cheeks</a>
    </label>
 </li> 

以及我尝试使用的js代码(来自之前的答案)

$('.lifilter').each(function(){
      $(this).find(".filtercheck").next('label').find('a').each(function(){
         var lasturl = $(this).attr('href');
         var urlsplit = lasturl.split("/");
         console.log(urlsplit);
         var finalvar = urlsplit.pop();
         console.log('Adding class: ' + finalvar);
         $(this).addClass(finalvar);
      });
 });

最佳答案

好的,看来这里没有人在发布之前尝试尝试这里的解决方案。

首先要做的是脸颊...。这是一个很难找到的 ID(您必须避开句点)。 label 也不是内部 html 的一部分,其中 ID 为 cheeks...,因此我们需要找到相邻元素并查看 a > 您正在寻找的 anchor 标记。

代码如下:

$(document).ready(function() {
    $('#Cheeks\\.\\.\\.').next('label').find('a').each(function(){
          var lasturl = $(this).attr('href');
          var urlsplit = lasturl.split("/");
         console.log(urlsplit);
          var finalvar = urlsplit.pop();
        console.log('Adding class: ' + finalvar);
          $(this).addClass(finalvar);
    });
});

here是一个有效的 jsfiddle 解决方案。

关于javascript - 获取url的最后一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29338707/

相关文章:

javascript - 电话导航无法正常工作

javascript - 浏览器中带有海拔的 3D map

javascript - 获取 tr 元素的正确顺序作为 jQuery 对象

javascript - Ajax回调被多次调用

jquery - 延迟加载中的多个容器

javascript - 互斥自举复选框开关

javascript - 无法使用 JavaScript 清除文本框

带有 2 个参数的 javascript 函数不起作用

javascript - Bootstrap 工具提示未附加到单击的按钮

javascript - 如何查看像素的颜色是否为红色? (使用jquery)