Disable html input

I am creating an 8 puzzle game in Javascript and jQuery mobile. I made boxes with <input readonly></input> and I put them all in a 9x9 table. The problem is that when I click on a field to move it, even if it is read-only, the mobile device tries to write to it and displays the keyboard. This is not what I want ... I want to disable input or use something other than <input> . I tried to disable = "disabled", but still does not work. This is the code:

 <form name="box"> </center> <table align="center"> <tr> <td ><input name="casella1" value="8" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> <td ><input name="casella2" value="5" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> <td ><input name="casella3" value="2" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> </tr> <tr> <td ><input name="casella4" value="6" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> <td ><input name="casella5" value="3" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> <td ><input name="casella6" value="4" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> </tr> <tr> <td ><input name="casella7" value="1" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> <td ><input name="casella8" value="7" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> <td ><input name="casella9" value="" onClick="test(this.value)" readonly style="text-align: center; width:50px; height:50px; font-weight:bold; background-color: #C0C0C0; border-style: solid; border-color: black"></td> </tr> </table> </form> 
+4
source share
3 answers

You should use disabled="disabled" instead of disable="disable" !

+11
source
 $("input").attr("disabled","true"); 

is a jQuery solution, and setting disabled in markup is an html solution.

+3
source

If you use HTML5, then the disabled attribute will suffice, since it is a boolean attribute.

+3
source

All Articles