為了改善您的使用體驗,本網站正在進行維護,部分功能暫時無法使用。若本站的文件無法解決您的問題,想要向社群發問的話,請到 Twitter 上的 @FirefoxSupport 或 Reddit 上的 /r/firefox 發問,我們的社群成員將很快會回覆您的疑問。

搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

了解更多

firefox sends hidden input field inside a noscript element even if scripting is enabled

  • 1 回覆
  • 2 有這個問題
  • 5 次檢視
  • 最近回覆由 cor-el

more options

Firefox 3.6 and 4 seems to ignore the noscript tag in certain cases even if scripting is enabled. I have pin-pointed this down to be a specific case only when the document is served as application/xhtml+xml.

Firefox does not ignore the element completely, for example in

the submit button is NOT displayed.

However this:

IS sent inside a POST form when document is served as application/xhtml+xml and NOT sent when it is served as text/html.

I would like to ask if this is a normal and correct behavior, or if it is a bug. Opera and AFAIK ie does not send the hidden element in both cases. Chrome on the other hand, behaves exactly like firefox.

I have prepared a test case, which can be accessed here: http://new.adina.sk/test.php

USAGE: 1) luad the page and press SUBMIT 2) notice that the $_POST array printout contains the "nonjs" field set to 1, this is unexpected behavior. 3) click on the link "Serve as text/html; charset=utf-8" 4) again submit the form, this time notice the $_POST array printout does not contain the "nonjs" field. This is expected behavior. 5) you can switch between the two versions using links and submit data as wished

I will be glad if someone could provide more information about this behavior. Thank you.

Firefox 3.6 and 4 seems to ignore the noscript tag in certain cases even if scripting is enabled. I have pin-pointed this down to be a specific case only when the document is served as application/xhtml+xml. Firefox does not ignore the element completely, for example in <noscript><input type='submit' name='subn' value='NOSCRIPT SUBMIT' /></noscript> the submit button is NOT displayed. However this: <noscript><input type='hidden' name='nonjs' value='1' /></noscript> IS sent inside a POST form when document is served as application/xhtml+xml and NOT sent when it is served as text/html. I would like to ask if this is a normal and correct behavior, or if it is a bug. Opera and AFAIK ie does not send the hidden element in both cases. Chrome on the other hand, behaves exactly like firefox. I have prepared a test case, which can be accessed here: http://new.adina.sk/test.php USAGE: 1) luad the page and press SUBMIT 2) notice that the $_POST array printout contains the "nonjs" field set to 1, this is unexpected behavior. 3) click on the link "Serve as text/html; charset=utf-8" 4) again submit the form, this time notice the $_POST array printout does not contain the "nonjs" field. This is expected behavior. 5) you can switch between the two versions using links and submit data as wished I will be glad if someone could provide more information about this behavior. Thank you.

所有回覆 (1)

more options

A good place to ask questions and advice about web development is at the mozillaZine Web Development/Standards Evangelism forum.
The helpers at that forum are more knowledgeable about web development issues.

You need to register at the mozillaZine forum site in order to post at that forum.

See http://forums.mozillazine.org/viewforum.php?f=25