15 Aralık 2008 Pazartesi

<button> u Enter icin default yapmak

<button>

  • type="submit" attribute u tanimlanirsa button focused olmadigi halde Enter' a basildiginda form submit edilir.
  • name attribute' u tanimlanirsa form icerisinde button icin bir form variable gonderilir. Gonderilen deger ekranda goruntulenen label' dir. Yani burada <button...>Login</button> oldugundan Login degeri gonderiliyor.

    Ama bu pek isimize yaramayacagi icin name attribute' unu kullanmamiza gerek yok. Cunku

Sadece name attribute u kullanirsak

  • butonumuza basilip basilmadigini (baska bir yolla submit edilmis olabilir)
  • ekranimizda birden fazla button varsa hangisine basildigini
anlayamayiz. Bu nedenle hidden field ve JavaScript kullanarak hangi butona basildigini gondermeliyiz. form' da field kalabaligi yaratmamak icin name attribute' unu kullanmamakta fayda var.


<script> function doButtons(btn){ document.testform.clickedBtn.value = btn.value; var elems = document.testform.elements; for(var i=0; i<elems.length; i++) alert('"testform.' + elems[i].name + '" : ' + elems[i].value); document.testform.submit(); return false; } </script> <form name="testform" action="" method="post"> <input type="hidden" name="clickedBtn" /> <table border="0" cellspacing="1" cellpadding="1" > <tr> <td>User Name</td><td>:</td><td><input name="username" type="text" maxlength="20"/></td> </tr> <tr> <td>Password</td><td>:</td><td><input name="pass" type="password" maxlength="20"/></td> </tr> <tr> <td colspan="2"></td> <td align="right"> <button type="submit" onclick="doButtons(this);" >Login</button> </td> </tr> <tr> <td colspan="2"></td> <td align="right"> <button onclick="doButtons(this);">Cancel</button> </td> </tr> </table> </form>

Hiç yorum yok: