Estou usando o jQuery Tools Validator, que implementa validações HTML5 através do jQuery. Tem funcionado muito bem até agora, exceto por uma coisa. Na especificação HTML5, o tipo de entrada "número" pode ter números inteiros e números de ponto flutuante. Isso parece incrivelmente míope, pois só será um validador útil quando os campos do banco de dados tiverem números de ponto flutuante assinados (para entradas não assinadas, você precisará voltar à validação "padrão" e, assim, perder recursos extras, como cima e para baixo setas para navegadores compatíveis). Existe outro tipo de entrada ou talvez um atributo que restrinja a entrada a números inteiros não assinados? Não encontrei nada, obrigado.
EDITAR
Ok, pessoal, eu aprecio seu tempo e ajuda, mas vejo muitas votações não merecidas acontecendo: D. Definir a etapa como 1 não é a resposta, pois não restringe a entrada. Você ainda pode digitar um número de ponto flutuante negativo na caixa de texto. Além disso, estou ciente da validação de padrões (mencionei isso no meu post original), mas isso não fazia parte da pergunta. Eu queria saber se o HTML5 permitiu restringir uma entrada do tipo "número" a valores inteiros positivos. Para essa pergunta, a resposta, ao que parece, seria "não, não". Eu não queria usar a validação de padrão porque isso causa algumas desvantagens ao usar a validação do jQuery Tools, mas agora parece que a especificação não permite uma maneira mais limpa de fazer isso.
number
entrada (pelo menos no FF / Chrome / Safari) agora só aceita números inteiros por padrão, a menos que você defina um valor explícito para ostep
attr que permita valores decimais; por exemplo:step="0.01"
. MDN documentado aqui . Em duas mentes sobre isso, porque eu acho que é um padrão sensato, mas também uma mudança radical (sim, isso afetou algum código que escrevi).