HTML如何将<input type =“number”/>的值设置为无穷大

时间:2014-04-03 17:22:39

标签: javascript ruby-on-rails html5 infinity

我有一个数字输入,我想要保持整数。如果该值设置为负,那么我希望显示的符号为∞(&#8734;)。

这样做不起作用(显示空白而不是“∞”):

<%
if foo <= -1
    v = '&#8734;'
else
    v = foo
end
%>
<input type="number" value="<%= v %>">

有没有办法不借助javascript来做到这一点?

2 个答案:

答案 0 :(得分:3)

对于拥有&#34;号码&#34;您有什么要求?领域?你能依靠表单验证并使用Javascript逐步增强只是输入数字。然后使用类似的东西

<input type="text" pattern="([0-9]|&#8734;)+">

pattern会阻止表单提交,除非它是数字或无穷大符号)

答案 1 :(得分:0)

您需要为此字段使用text类型,并使用CGI::unescapeHTML转换无穷大符号

<% 
   if foo <= -1
     v = CGI::unescapeHTML('&#8734;')
   else
     v = foo
   end
%>
<input type="text" value="<%= v %>">