簡體   English   中英

XHTML Strict 1.0 頁面的 Enctype

[英]Enctype for XHTML Strict 1.0 Page

為了我自己的啟迪,我構建了一個包含表單的 XHTML Strict 1.0 頁面。 我希望它只接受 text/xml MIME 類型,所以我相應地指定了接受屬性。 但是,當還包含enctype ="mulipart/form-data" 屬性-值對時,無法對其進行驗證。
在使用 XHTML Strict 1.0 時,是否有替代指定 enctype 的方法? 我是否需要指定 enctype 或類似的東西?

我還沒有設置實際的“動作”(cgi 或其他一些后端功能)。 我目前只關心客戶端,並希望在上傳任何不是 xml 的內容時提示用戶。 我在這里需要 JavaScript 嗎?

此外,似乎沒有太多人喜歡任何形式的 XHTML。 如果您可以自由選擇 XHTML Strict/Frameset/Transitional 或 HTML 4.01 作為 static 頁面,哪個標准最好?

表單編碼(enctype 屬性)必須是multipart/form-data文件上傳才能工作。

根據我能找到的, accept屬性根本沒有在任何瀏覽器中實現。

因此,如果您想在實際上傳之前對所選文件提供任何反饋,使用 Javascript 似乎是唯一的選擇。


有些人對 XHTML 有非常強烈的看法,但這並不意味着它不是一個廣泛使用的標准。

首先要解決最后一點:嚴格的 XHTML 1.1 受到以下事實的困擾:W3C 建議確實要求您以 MIME 類型application/xml+xhtml或類似的形式提供文檔,而這幾乎不可能在 web 服務器上設置一種滿足大多數(如果不是全部)當前客戶的方式。 因此,如果您無論如何都不能正確地做到這一點,那么您最好使用 HTML 4.01,它在語法上幾乎等同並且可以說更強大(例如 HTML 4.01 可以有效地禁止嵌套錨點,而 XHTML 必須將其添加為文本附加子句)。 您將完成相同的工作,並且幾乎所有現有客戶都會理解它。 (由於我相信您只會使用 DOM 方法來操作文檔客戶端,因此 AJAX 后端發送 XML 的其他 forms 不會有問題。)

對於第一個問題:沒有什么可以強迫任何客戶做任何具體的事情。 accept屬性是對客戶端的提示,您的服務器可能會接受或拒絕什么,但它不必以任何定義的方式對此采取行動。 如果您願意,您可以使用腳本在客戶端添加一些可選的附加驗證,但當然您也必須始終驗證服務器上的輸入數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM