jQuery用一个子元素替换另一个href值

时间:2012-07-02 02:21:30

标签: jquery

我正在尝试使用我们的系统如何为日历调出代码,并且由于格式化,我需要将某些链接的href值更改为其子链接的值。以下是一些示例代码:

<td class="date eventDate">
<a class="dateLink" href="calendar?DATE=2012-07-06&VIEW=day">6</a>
<br>
  <div>
    <div class="event">
      <a href="/calendar?date=20120702" class="event"></a>
      <a href="/calendar?root=320794" class="eventon">6 July</a>
      </div>
  </div>
</td>

我需要jQuery用第三个标记的href值替换第一个标记的href值。我不确定如何让jQuery查看所有页面的元素来实现这一点。

我认为该过程是查找所有a.dateLink并将当前选择替换为子元素a.eventon的href值,然后转到下一个a.dateLink并重复。如果没有子元素a.event,则移动到下一个。

任何人都可以帮我提供我需要的东西吗?

2 个答案:

答案 0 :(得分:4)

这里有一些伪代码可以帮助你入门:

//get all td.date.eventDate
//for each element in collection
    //find a.dateLink child
    //find a.eventon child
    //if a.eventon is not null or empty
        //set a.dateLink[href] to a.eventon[href]
    //else
        //continue loop

答案 1 :(得分:1)

此代码将执行

    $("td.data.eventDate").each(function(){
        if($(this).find("a.eventon") > 0)
        {
            $(this).children("a.dateLink").attr("href",$(this).children("a.eventon").attr("href"));
        }
    });