User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0 The Tools | Page Info window has a Forms tab that lists all the FORMS that are present in the page. The page in question (see above) has FOUR forms 1. Main ASP.NET Form (name Form1) 2. Login Form (name Login) 3. Google Search Form (name Google) 4. PayPal Donation Form (name PayPalDonation) Forms 2..4 are within #1 because Form1 is the standard ASP.NET form. Reproducible: Always Steps to Reproduce: 1. Visit the webpage (http://www.FocusOnPanama.com/) 2. In the browser select Tools | Page Info | Forms 3. It will list only forms #1,#3,#4 Form #2 is "swallowed". It does not appear in the list and if you look properly you will notice that its input fields (Usuario/Password) now appear as if they were part of Form1. Before the order was different (1,4,2,3) and in that case it was #4 that was "swallowed" with its input fields being "taken" or "absorbed" into #1. Actual Results: One of the forms is not listed Expected Results: The form (Login) should have been listed as well
No, I would say that Page Info is correct there, for what it is. It works off the DOM that the parser generates for the page, not some arbitrary analysis of the original source. Nesting forms, common as it is, is utterly invalid HTML, with completely undefined behavior. To be bugwards compatible, that's exactly how nested forms are handled: the first form inside the outer form acts as though it were really the outer form. Our method is slightly different than IE's since it submits only the inner form's controls, to the outer form's action, while we submit both the inner and outer form's controls to the outer form's action, but that's a different bug entirely. For what Page Info does, having the first nested form completely disappear is correct behavior, weird as it seems.