猿问

<input type="number"> 适用于 .html 文件,不适用于 .php 文件

我是 PHP 的新手,我发现简单的数字类型表单输入在 .html 和 .php 文件中的工作方式不同。


代码:


.php 文件:


 <form>

    <input type="number" name="num1" placeholder = "Number 1">

    <input type="text" name="num2" placeholder = "Number 2">

    <select name="operator" id="opr1">

        <option>Add</option>

        <option>Subtract</option>

        <option>Multiply</option>

        <option>Devide</option>

    </select>

    <br>

    <button name="submit" value = "submit">Calculate</button>

</form>

.html 文件:


<form action="contactform.php" method="GET">

    <label for=""></label>

    <input type="number" name="number1" step="0.0001" placeholder="number1">


    Male:<input type="radio" name="gender" value="Male" checked>

    Female:<input type="radio" name="gender" value="Female">

    Other:<input type="radio" name="gender" value="Other">

    <input type="password" name="pwd" value="">

    <textarea name="message" cols="30" rows="10" placeholder="write a message"></textarea>

    <select name="carSelect" id="">

        <option value="ford">Ford</option>

        <option value="volvo">Volvo</option>

        <option value="opel">Opel</option>

    </select>

    <br>

    <button type="submit" name="submit">Submit</button>



</form>

结果... php(奇怪的符号而不是数字):

.html 一切正常:

http://img4.mukewang.com/645df07a0001762d06540187.jpg

慕虎7371278
浏览 121回答 3
3回答

智慧大石

那是梵文脚本中的 6 。<input type="number" />- 以及date其他 HTML5 表单输入类型 - 是区域设置感知的,并将根据用户的浏览器调整它们的外观。有时,这是根据服务器发送的标头完成的。PHP 没有什么特别之处,但在这种情况下,您的 PHP 服务器和仅加载纯 HTML 文件之间似乎存在配置差异。

莫回无

WHATWG说(强调我的):本规范没有定义用户代理要使用的用户界面;鼓励用户代理供应商考虑什么最能满足用户的需求。例如,波斯语或阿拉伯语市场的用户代理可能支持波斯语和阿拉伯语数字输入(如上所述将其转换为提交所需的格式)。同样,为罗马人设计的用户代理可能会以罗马数字而不是十进制显示值;或者(更实际地)为法国市场设计的用户代理可能会在小数点前的千位和逗号之间显示带有撇号的值,并允许用户以这种方式输入值,并在内部将其转换为上述提交格式。一些快速测试表明,用于在控件中显示数字的国家格式<input type="number">确实取决于浏览器:Firefox 考虑 HTML 语言(lang属性)Chrome 考虑浏览器语言(Accept-Language字符串?)<div><input type="number" value="1234567.890"></div><div><input type="number" value="1234567.890"></div><div><input type="number" value="1234567.890"></div><div><input type="number" value="1234567.890"></div>上面的代码片段在我的电脑中看起来像这样:我真的不知道如何触发 Devanagari 脚本(hi只是一个猜测)。

繁星coding

输入类型编号采用所有特殊符号和字母“e”,为防止出现此问题,请在 onkeypress 上调用 javascript 函数。function isNumberKey(evt){&nbsp; &nbsp; var charCode = (evt.which) ? evt.which : evt.keyCode&nbsp; &nbsp; if (charCode > 31 && (charCode < 48 || charCode > 57))&nbsp; &nbsp; return false;&nbsp; &nbsp; return true;}并将其称为onkeypress="返回 isNumberKey(事件)"
随时随地看视频慕课网APP
我要回答