【问题标题】:Array change input like if A change to B for example数组更改输入,例如如果 A 更改为 B
【发布时间】:2017-01-31 21:31:40
【问题描述】:

问题:所以我有一个带有数组的表单,可以将数据发送到 excel,但我需要他们在表单中输入的时间是 : 而不是 . 有没有办法像

如果$time = 00.00 像这样更改为00:00,我可以这样做吗?

如果没有,有没有办法锁定输入表单的格式,所以它只接受00:00,如果他们输入00.00,他们会得到一些错误的信息?

编辑: 我有一个清单,但如果他们不使用它

<input list="start" name="start[]" value="" class="listbox" /> 
<datalist id="start">
<option value="08:00"/> 
<option value="08:30"/> 
</datalist>

【问题讨论】:

    标签: php regex forms validation input


    【解决方案1】:

    您可以使用 HTML5 pattern 来确认输入符合您的要求。

    pattern="^\d+:\d+$"
    

    这要求字段以数字开头,冒号,然后以数字结尾。您还应该有一个验证服务器端,以防有人绕过检查,或者使用的是旧版浏览器。

    if(!preg_match('/^\d+:\d+$/', $_POST['field'])) {
          echo 'Invalid input';
    }
    

    正则表达式演示:https://regex101.com/r/xp8IzI/1

    另一个客户端选项是使用select 代替datalistinput,但这不会让他们进入更改时间。

    <select name="start[]" class="listbox"> 
         <option value="08:00">08:00</option> 
         <option value="08:30">08:30</option> 
    </select>
    

    【讨论】:

      猜你喜欢
      • 2021-12-21
      • 2017-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-02
      • 2020-11-30
      相关资源
      最近更新 更多