2012-08-07 66 views
0

我想要做這樣的事情在原型:錯誤更新表內容與原型

onSuccess: function(transport) { 
    template = transport.responseText.evalJSON(); 
    form = event.up('form'); 
    form.select('.audio_channels').update(template.channelHtml); 
} 

form標籤是一個表,我想,以取代其內容。 channelHtml是一串HTML <tr>標籤。

我越來越:

TypeError:對象[object HTMLTableElement]有沒有方法「更新」

所以我想這不是一個擴展的對象,並試圖Element.extend(form.select('audio_channels')),它返回一個空的對象。然後我嘗試form.select('.audio_channels').innerHTML(template.channelHtml),我得到TypeError: Object [object HTMLTableElement] has no method 'innerHTML'。然後,我嘗試與tbody元素,我得到[object HTMLTableSectionElement] has no method 'innerHtml'

這在我看來,它應該工作。 form.select('audio_channels')正在返回正確的DOM元素。根據我的ajax調用,我需要做什麼來設置表格的內容?

回答

0

form.select('.audio_channels').each(function(node){ 
    node.update(template.channelHtml); 
}); 

這將作爲原始代碼是做實際的元素,而不是一個項目陣列上執行的代碼替換最後一行。