I've run into a similar problem, but am trying to submit the form with
a text link and java script.

The  submit element is on the page, but hidden. and I get the same
error:

---------------------------- HTML
------------------------------------------
<form id="login_form" name="login_form" accept-charset="utf-8"
method="post" action="">
  <fieldset>
        <img style="left: 20px; position: relative; top: 10px; margin-top:
-22px; padding-top: 5px;" src="http://media.muskegohitmen.com images/
siteLogo_sm.png"/>
          <li class="bold">Username: <br/><input type="text" size="40"
name="username" maxlength="30" id="id_username"/></li>
          <li class="bold">Password: <br/><input type="password" size="40"
name="password" maxlength="20" id="id_password"/></li>
          <li><a class="js-login btn_sil">Login</a><a
class="btn_yellow">Forgot Password ?!</a>
          </li><input type="submit" value="Login" name="login"/>
  </fieldset>
</form>
--------------------------   EXTERNAL JS FUNCTION
---------------------------------------

// There is some mootools code in there, I thought that might be the
problem, so I stuck the document line in there to see if that would
fix it.
function hitmenFormSubmit(form_id)
{
  form = form_id.get('id');
  this.alert("form submit " +" "+form);
 document.login_form.submit();
 //$(form).submit();
}

my views function is looking for request.POST['login'] == Login

Any ideas?

If i press input button, it works fine, if i press the javascript
button I get the error
On Dec 22 2008, 9:23 pm, Malcolm Tredinnick <malc...@pointy-stick.com>
wrote:
> On Mon, 2008-12-22 at 19:03 -0800, DragonSlayre wrote:
> > I've created my own form:
>
> > <form method="POST" action="/accounts/login/">
> >   <label id="login" style="font-weight:bold;">Login:</label>
> >   <label id="login_username" value="{{ username }}">Username: </label>
> >   <input type="text" />
> >   <label id="login_password">Password:</label>
> >   <input type="password" />
> >   <input type="submit" value="login" />
> > </form>
>
> > I am mappying /accounts/login/ to a view of mine, which is then
> > calling:
>
> > if request.method == 'POST':
> >         username = request.POST['login_username']
>
> > I have no idea why I'm getting the error - "Key 'login_username' not
> > found in <QueryDict: {}>".
>
> > What am I doing wrong?
>
> login_username is the value of the id attribute on the label, not on the
> form input element. Basically, your HTML isn't correct for the type of
> form you're after. You need to identify the form input elements, rather
> than the label elements. Compare the output from a Django form to what
> you have an you should see the difference fairly quickly.
>
> Regards,
> Malcolm

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to