1

I want to create a very minimal login block and thus wouldn't like to have the "log in" button at all. I would like to have only the username and password fields, and log on by hitting "enter".

I have added display:none CSS property to the button, but this will stop form from being submitted. What else could be done ?

6
  • just css display:none; but then i can't log in using this form because the button is missing :)
    – Nim
    Jan 7, 2013 at 14:27
  • 5
    Hiding the button with CSS won't stop the form from submitting when enter is pressed, if you're looking for a quick-fix that's it. Bear in mind you're not doing much for UX here, people expect a call-to-action to continue.
    – Clive
    Jan 7, 2013 at 14:33
  • But so it does. I can't submit if the button is display:none; on css (I got ajax login module active)
    – Nim
    Jan 7, 2013 at 14:39
  • 1
    visibility:hidden Will work ! Just tried it.
    – GoodSp33d
    Jan 7, 2013 at 14:44
  • @2-Stroker With the ajax login module active it probably won't (the JS will intercept the default form submit). Try doing it with jQuery: $('#login-textfield').keydown(function(e) { if (e.which == 13) { $('#login-button').click(); }); or something
    – Clive
    Jan 7, 2013 at 14:46

1 Answer 1

0

The jquery approach to achieve this one which worked for me (drupal 7) is the following code

$("#edit-pass").keypress(function(event) {
  if ( event.which == 13 ) {
    $('#edit-submit').click();
   }

});

$("#edit-name").keypress(function(event) {
  if ( event.which == 13 ) {
    $('#edit-submit').click();
}});

#edit-name and #edit-pass are my two login fields.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.