从div中检索链接并将其显示在第一个div正下方的另一个容器中

时间:2015-12-16 15:04:12

标签: javascript jquery html

我无法为我的问题想出更好的头衔。我想做的是如下:

我有什么:

  1. 我有一系列具有相同类名的div。
  2. 这些div中的每一个都有一个具有相同类名的段落。
  3. 每个段落都是一个元素。
  4. 在下面的所有内容中,我有另一系列具有相同类名的div
  5. 我需要什么 我希望能够从第一个div中捕获链接,从该链接获取我需要的内容,并在第二个div中显示它。

    我不是jquery的新手,但我不是专家,也不知道所有的功能,我怎么能做到这一点?

    脚本:

    $(function() {
    var r;
    var external_url;
    var final_url;
    
      $(".a a").each(function(){
    
        if($(this).attr('href')=='http://www.sample.com'){
    
            $(".b a").each(function(){
    
            r = $(".b a").attr("href");
    
            var index_of_1 = r.indexOf("index.php?l=");
    
            external_url = r.substring(parseInt((index_of_1 + 1) + 5));
    
            var index_of_2 = external_url.indexOf("&h=");
    
            final_url = external_url.substring(0, index_of_2);
    
        }
      });
    
       $(".link_above").html("<a class='ext_url' href='" + decodeURIComponent(final_url) + "'>Preview</a>");
            }); 
    
    
    });
    

    sample.html

    <div class="a">
      <a href="http://www.sample.com">Site 1</a>
    </div>
    
    <div>
      <p class="b">This is a <a href="http://www.web.com/index.php?l=link1&h=3">link 1</a> example</p>
    </div>
    <div class="link_above"></div>
    <hr />
    
    <div class="a">
      <a href="http://www.sample.com">Site 2</a>
    </div>
    
    <div>
      <p class="b">This is a <a href="http://www.web.com/index.php?l=link2&h=3">link 2</a> example</p>
    </div>
    <div class="link_above"></div>
    <hr />
    
    <div class="a">
      <a href="http://www.sample.com">Site 3</a>
    </div>
    
    <div>
      <p class="b">This is a <a href="http://www.web.com/index.php?l=link3&h=3">link 3</a> example</p>
    </div>
    <div class="link_above"></div>
    

    结果:

    Site 1
    This is a link 1 example
    
    Site 2
    This is a link 2 example
    
    Site 3
    This is a link 3 example
    

    我的期望

    Site 1
    This is a link 1 example
    link1
    
    Site 2
    This is a link 2 example
    link2
    
    Site 3
    This is a link 3 example
    link3
    

    我希望我完全清楚。提前谢谢,

1 个答案:

答案 0 :(得分:0)

首先你必须稍微改变你的结构,以便我们获取链接的div和我们需要放置它的div都位于一个名为&#34; container&#34;的div中。 (为了更容易)。

继承人的结构

$this->ExampleModel->validator()->remove('phone', 'required');

和jQuery这样

<div class="a">
  <a href="http://www.sample.com">Site 1</a>
</div>

<div class="container">
  <div>
    <p class="b">This is a <a href="http://www.web.com/index.php?l=link1&h=3">link 1</a> example</p>
  </div>
  <div class="link_above"></div>
 </div>
<hr />

<div class="a">
 <a href="http://www.sample.com">Site 2</a>
</div>

<div class="container">
  <div>
    <p class="b">This is a <a href="http://www.web.com/index.php?l=link1&h=4">link 1</a> example</p>
  </div>
  <div class="link_above"></div>
</div>
<hr />

<div class="a">
  <a href="http://www.sample.com">Site 3</a>
</div>

<div class="container">
  <div>
    <p class="b">This is a <a href="http://www.web.com/index.php? l=link1&h=5">link 1</a> example</p>
  </div>
  <div class="link_above"></div>
</div> 

继承人fiddel Fiddle