搜索 | 用户支持

防范以用户支持为名的诈骗。我们绝对不会要求您拨打电话或发送短信,及提供任何个人信息。请使用“举报滥用”选项报告涉及违规的行为。

详细了解

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

  • 1 个回答
  • 2 人有此问题
  • 3 次查看
  • 最后回复者为 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