【问题标题】:How to get href value?如何获得href值?
【发布时间】:2014-03-01 18:06:44
【问题描述】:

为了简单起见,我目前使用的是 javascript。如何获取 href 值并将其存储在 javascript 变量中。我需要为每个课程部分以及每个部分中的每个项目提取所有属性 href 值。

<ul class="curriculum-items-list">
 <li class="curriculum-section-container ng-scope">
  <ul>
   <li class="curriculum-item-container ng-scope">
    <a href="http://www.mywebsite.com/videoSec1_1.mp4">
   </li>
   <li class="curriculum-item-container ng-scope">
    <a href="http://www.mywebsite.com/videoSec1_2.mp4">
   </li>       
  </ul>
 </li>
 <li class="curriculum-section-container ng-scope">
  <ul>
   <li class="curriculum-item-container ng-scope">
    <a href="http://www.mywebsite.com/videoSec2_1.mp4">
   </li>
   <li class="curriculum-item-container ng-scope">
    <a href="http://www.mywebsite.com/videoSec2_2.mp4">
   </li>       
  </ul>
 </li>
</ul>

想要的结果

http://www.mywebsite.com/videoSec1_1.mp4
http://www.mywebsite.com/videoSec1_2.mp4
http://www.mywebsite.com/videoSec2_1.mp4
http://www.mywebsite.com/videoSec2_2.mp4

【问题讨论】:

    标签: javascript href


    【解决方案1】:

    您可以使用querySelectorAll 获取对a 元素的引用,然后使用Array.prototype.map 将相关数据提取到数组中:

    var hrefs = [].map.call(document.querySelectorAll(".curriculum-item-container a"), function (elem) {
        return elem.href; 
    });
    

    这是working example

    【讨论】:

      【解决方案2】:
      var hrefs = [];
      $(".curriculum-item-container a").each(function (i, a) {
          hrefs.push(a.getAttribute("href"));
      });
      

      【讨论】:

        【解决方案3】:

        使用querySelectorAll 获取所有href 的另一种方式。

        let hrefs = [];
        
        document.querySelectorAll('.curriculum-item-container a').forEach(a => {
          hrefs.push(a.href);
        })

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-08-05
          • 2017-10-08
          • 2011-11-15
          • 2020-07-04
          • 1970-01-01
          • 2011-08-14
          • 1970-01-01
          • 2012-11-07
          相关资源
          最近更新 更多