2011-09-03 33 views
3

的js代码段是这样的:this.innerHTML在原型

function currency_change(value) { 

    // change all currencies on the page 
    $$('label.currency').each(function() { 

    this.innerHTML = value; 

    }); 
    alert(value); 

} 

我知道value是正确的,我知道我穿越了每个label.currency类,但我似乎无法改变,以这些元素的值为innerHTML

我GOOGLE疯了,但我不知道如何做到这一点。我怀疑this有什么问题。

回答

4

试试这个:

$$('label.currency').each(function(element) { 
    element.update(value); 
}); 
+0

谢谢 - 那工作! –

+0

很高兴我能帮到你 –

2
$$('label.currency').invoke('update',value); 

IE显示性能很差取代复杂的DOM树时。在这种情况下,更新前取下内DOM:

$$('label.currency').invoke('childElements').invoke('invoke','remove'); 

如果它是一个单一的元素,你可以说:

$('elementID').childElements().invoke('remove');