請閱讀本文,了解如何在 Dreamweaver 中指定遺失的字元實體以取代 XSLT 的特殊字元。
Dreamweaver 和更高版本的用戶介面已經簡化。 因此,您在 Dreamweaver 和更高版本中可能會找不到本文所描述的一些選項。 如需詳細資訊,請參閱本文。
指定遺失的字元實體
在 XSLT 中,某些字元不允許用於 特定內容中。例如,您不能在標記之間的文字中或在屬性值中使用小於符號 (<) 和 & 符號 (&)。如果這些字元使用不當,XSLT 轉換引擎會顯示 錯誤。要解決此 問題,您可以指定字元實體來取代特殊 字元。
字元實體是代表其他字元的字元字串。字元實體有具名或編號兩種。具名實體以 & 符號開頭,後接名稱或字元,並以分號 (;) 結尾。例如,< 代表左角括弧字元 (<)。編號實體的開始和結束方式也相同,不過是以雜湊符號 (#) 和數字來指定字元。
XSLT 有下列五個預先定義的實體:
字元 |
實體程式碼 |
|---|---|
< (小於) |
< |
& 符號 |
& |
> (大於) |
> |
" (引號) |
" |
‘ (所有格符號) |
' |
如果您在 XSL 檔案中使用其他字元實體,您需要在 XSL 檔案的 DTD 區段中定義它們。Dreamweaver 提供數個預設實體定義,您可以在 Dreamweaver 中建立的 XSL 檔案頂端看到這些定義。這些預設實體涵蓋 最常用字元的廣泛選擇。
當 您在瀏覽器中預覽 XSL 檔案時,Dreamweaver 會檢查 XSL 檔案是否有未定義的實體,如果找到未定義 實體會通知您。
如果您預覽附加至 XSLT 檔案的 XML 檔案,或如果您預覽含有 XSLT 轉換的伺服器端頁面,伺服器或瀏覽器 (而非 Dreamweaver) 會通知您有未定義的實體。以下是當您請求由含有遺失實體定義之 XSL 檔案轉換的 XML 檔案時,在 Internet Explorer 中可能收到訊息 的範例:參考到未定義的實體 'auml'。Error processing resource 'http://localhost/testthis/list.xsl'. 行 28,位置 20 <p class=''test''>ä</p> -------------------^
若要更正頁面中的錯誤,您必須手動將實體定義新增到頁面。
參照未定義的實體 'auml'。Error processing resource 'http://localhost/testthis/list.xsl'. 行 28,位置 20
<p class=''test''>ä</p>
-------------------^
指定遺失的實體定義
此網頁包含 HTML 4 和 XHTML 1.0 中允許的 252 個實體。
例如,如果字元實體 Egrave 遺失,請在 W3C 網頁上搜尋「Egrave」。您將找到 下列項目:
<!ENTITY Egrave CDATA "È" -- latin capital letter E with grave, U+00C8 ISOlat1 -->
在範例中,Egrave 是實體名稱,而 È 是實體代碼。
<!ENTITY entityname "entitycode;">
在範例中,您應該輸入下列實體標記:<!ENTITY Egrave "È">
<!ENTITY Egrave "È">
如果您重複使用相同的字元實體,您可能需要在 Adobe Dreamweaver 使用「檔案」>「新增」時預設建立的 XSL 檔案中,永久新增其定義。
將實體定義新增至 Adobe Dreamweaver 預設建立的 XSL 檔案
Configuration/DocumentTypes/MMDocumentTypeDeclarations.xml
<documenttypedeclaration id="mm_xslt_1">
<!ENTITY entityname "entitycode;">