This was such a mission to fix, it deserves a post. Starting with a very basic login page using standard html form elements, a couple of text inputs for username and password, a checkbox to accept terms and conditions and a submit button. The login system would work fine on very early blackberries version 3.7.0 - those really old text only browser versions. It also worked on the latest 9530 blackberries version 4.7.0.
But this very basic page did not work on the blackberry 8800 which was so strange to me considering it worked on models both earlier and later than the 8800.
One of the reasons this bug took a long time to find was due to setting up a debugging environment. I downloaded a handful of the 8800 emulators version 4.5.0 but not a single one would connect to the internet. Even after I tried reinstalling MDS, uninstalling each other emulator I had, restarting, restarting then reinstalling MDS and the 8800 emulator and every other combination.
So, the 8800 emulator version 4.2.1 works and connects to the internet fyi. It took me about 40-60 minutes to download and install each emulator so that should save you a lot of time right there.
The problem was structure of my html. I had:
<form> <div> <input name="data[User][username]" type="text" maxlength="255" value="" id="UserUsername" /> <input name="data[User][password]" type="text" maxlength="255" value="" id="UserPassword" /> <input type="submit" value="Login" label="Login" id="loginButton" /> </div> <div> <input type="checkbox" name="data[User][terms]" value="1" id="UserTerms" /> </div> </form>
The problem seemed to be closing the first div. The 8800 seemed to close the form when this first div was closed so when the form was submitted the checkbox was not included in the data sent to the server. Once I moved the checkbox up above any closing div tags the value was passed correctly, problem solved.