0
我有一個使用XML和XSL的html頁面。還有一些html標籤,如<table>
,<tr>
和<td>
。我想從javaScript訪問這些標籤,併爲它的來自javaScript的屬性設置值。我嘗試使用GetElementById,GetElementByName,GetElementByTagName訪問下面發佈的代碼,但無法這樣做。無法訪問JavaScript中xsl中存在的Html標記
摘錄代碼:
<xml id="xmlSchedule" LANGUAGE=javascript onreadystatechange="return xmlSchedule_onreadystatechange()"></xml>
<xml id="xslSchedule">
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template>
<table id="tblSchedule" index='0' class="GridText" style="TABLE-LAYOUT:fixed;FONT-SIZE:9pt;FONT-FAMILY:verdana;width=100%">
<xsl:for-each select="VOE-OBJECT/ITEM">
<tr id="trSchedule" onmouseover="this.style.cursor='default'"> <xsl:attribute name="TWRow"></xsl:attribute>
<td data="25" width="20" height='17' align='left'>
<img><xsl:attribute name="SRC"><xsl:eval>getChargeIcon(this)</xsl:eval></xsl:attribute><xsl:attribute name="title"><xsl:eval>getChargeTitle(this)</xsl:eval></xsl:attribute>
</img>
</td>
<td data="24" id='tdNote' width="20" height="17" align='middle'>
<img><xsl:attribute name="SRC"><xsl:eval>getNoteIcon(this)</xsl:eval></xsl:attribute><xsl:attribute name="title"><xsl:eval>getNoteTitle(this)</xsl:eval></xsl:attribute>
</img>
</td>
JavaScript函數:
function XYZ() {
var oRow = document.GetElementByName("TWRow");
var oLength = oRow.childNodes.length;
for (var i = 0; i < olength; i++) {
oRow.childNodes.item(i).attributes.getNamedItem("data")= i;
}
當我用document.GetElementByName( 「TWRow」),並在快速監視檢查它返回一個對象,但計數0.
我搜索了很多,但找不到任何相關的東西。我很新的XML和XSL請引導。
阿努普,有沒有的getElementById功能,它的getElementById,你嘗試了嗎? – Fernando
另請注意,名稱空間http://www.w3.org/TR/WD-xsl中的XSL代碼是W3C標準XSLT的專有,現今不受支持的前身。 –
AFAIK是非法的,請使用。 此外,TWRow似乎是的屬性,而不是元素。 alert(document.getElementById(「trSchedule」))應該顯示對象的類型。 另外,官方HTML屬性必須是小寫字母(SRC-> src)。 同樣,缺少匹配屬性 - 除非將其嵌入到某處。而且,我假定代碼摘錄來自不同的文檔,因爲文檔只能有一個根節點? 順便說一句,嘗試在Chrome中運行它,它有非常嚴格的錯誤檢查。 –
Kenney
A
0
相關問題
-
1. 訪問html標記中的javascript變量
-
2. 無法訪問腳本中的ColdFusion標記中的JavaScript變量
-
3. XSL HTML標記
-
4. 無法訪問fragment_main中的ID標記
-
5. 在JSP中的HTML標記中訪問javascript變量
-
6. 無法訪問跨度標記的Javascript中的innerHTML功能
-
7. 如何輸出存儲在xsl:變量中的html標記
-
8. XSL:從HTML代碼中消除標記
-
9. 無法在Highlights.js中顯示HTML標記
-
10. PHP標記無法在HTML中識別
-
11. HTML無法訪問的DOM節點,Javascript?
-
12. 無法訪問從Android Webview的HTML文件中存在的url
-
13. 無法訪問硒中的<object>標記中的元素
-
14. 無法訪問標記在原型細胞中的UITableView
-
15. 無法訪問html的目標元素
-
16. 無法在Javascript中使用xsl變量
-
17. 在jQuery中訪問XSL
-
18. 訪問內部html標記
-
19. 無法在javascript中訪問cookie路徑/
-
20. 無法訪問HTML中的子節點
-
21. 我無法通過javascript中的id或classname訪問我的標記
-
22. 訪問標記通過JavaScript
-
23. 無法訪問HTML標識牌
-
24. 無法從崇高文本中的html訪問javascript代碼
-
25. 訪問xsl中的節點
-
26. 無法訪問數組中的JavaScript
-
27. 在javascript中的蛇 - 無法訪問方法中的屬性?
-
28. 無法通過XSL訪問XML中元素的值
-
29. javascript中的內存訪問
-
30. 如何在html中從Javascript訪問Java中的方法?
最新問題
-
1. Promise.all從API的拒絕
-
2. Sklearn - predict_proba等效
-
3. 如何配置ZeroMQ ROUTER套接字以繼續嘗試長時間發送包?
-
4. 變回默認的背景色DefaultTableCellRenderer
-
5. 我如何總結兩個ZoneOffset?
-
6. 多輸出指針指向C++中的文件
-
7. 授權在SPA或客戶端應用程序
-
8. Python 3.6:使用對象實例名稱引發錯誤
-
9. ASP.NET使用瀏覽器下載SFTP文件
-
10. REST保存GET歷史
-
1. 訪問html標記中的javascript變量
-
2. 無法訪問腳本中的ColdFusion標記中的JavaScript變量
-
3. XSL HTML標記
-
4. 無法訪問fragment_main中的ID標記
-
5. 在JSP中的HTML標記中訪問javascript變量
-
6. 無法訪問跨度標記的Javascript中的innerHTML功能
-
7. 如何輸出存儲在xsl:變量中的html標記
-
8. XSL:從HTML代碼中消除標記
-
9. 無法在Highlights.js中顯示HTML標記
-
10. PHP標記無法在HTML中識別
回答
首先,我認爲你應該使用「GetElementsByName」在這裏,沒有「GetElementByName」(因爲它是有效的多個元素名稱相同)
但它沒有找到任何東西的原因是因爲您的HTML中沒有名稱爲「TWRow」的元素。而你要做的就是因爲這個XSLT
這不是理由實際上是創建一個屬性,叫做TWRow您TR元素
但GetElementsByName的工作,它需要看起來像這樣
要解決此問題,請將XSLT更改爲如下所示:
或者更好的是,剛寫出來的屬性直接取消您的XSLT
來源
2013-10-31 08:15:28
相關問題