使用Javascript写入非唯一div

时间:2010-03-05 01:39:09

标签: javascript xml html rss

我正在为学校建立一个多页RSS阅读器。

aList是包含每个单独Feed的div(Feed的数量会波动)。

theTitle是将填充当前Feed属性的div。此外,如果单击,它会将当前Feed中的属性列表加载到内容中。

我想知道如何在点击标题时动态地将属性加载到内容中,因为内容和标题将是非唯一的div(我不能给它们ID)。

提前感谢您的帮助,

-Andrew

6 个答案:

答案 0 :(得分:1)

document.getElementsByClassName( 'ALIST')。的getElementsByTagName( 'DIV')

答案 1 :(得分:1)

您应该查看jQuery选择器以及其他DOM操作。像

这样的东西
$("div.theContent").attr("name", "value");

答案 2 :(得分:1)

使用jquery,您可以使用以下代码:

 $(".theTitle").bind("click", function(){
    $el = $(this);
           $el.parent().$(".theContent").load('ajax/content.php?news=' . $el.text());
 });

这将使所有链接可点击,点击,更新相应的内容div,其值为ajax / content.php?news = theTitle-value < / p>

答案 3 :(得分:1)

<div class="aList">
<div class="theTitle" onclick="fillContentBox(this)"></div>
<div class="theContent"></div>
</div>

在你的剧本中......

function fillContentBox(div) {
  var theContentDiv = div.parentNode.getElementsByTagName("div")[1];
  // statements that do things with theContentDiv
}

答案 4 :(得分:1)

使用好的Javascript库,例如PrototypejQuery。现在看起来很小,但从长远来看,这些框架可为您节省的时间。

在两个框架中,您可以使用以下选择该div:

$('div.theTitle')

使用jQuery,您可以:

$('div.theTitle').click( function() {
    var title = $(this).text();
    var contentDiv = $(this).siblings('div.theContent');
    // Do something with contentDiv and the title
} );

这将使每个 theTitle div都有一个onClick事件,该事件与其关联的theContent div有关。

答案 5 :(得分:0)

如果您不想更新多个元素,则必须能够确定要更新的元素。如果元素被分组到 具有“id”值的其他内容中,则可以利用它。