2

我对表格中的输入有要求...我的有效值为数字或“无最小值”或“无最大值”。现在我可以将模式用于字符串值或数字,但不能同时使用...我的问题是如何在 html 5 输入标签中使用多个模式...我也在使用 jQuery...

 <form id="form_searchProperty"  >
  <div class="criteria_block">
   <span><label class="search_form_Label" for="propbath">Bathroom</label></span>
     <span>
          <input id="input_propbath_min" value="No Min" pattern ="\d+" name="Min_Bathrooms" style="width:75px;"/>
          <input id="input_propbath_max" value="No Max" pattern ="\d+" name="Max_Bathrooms" style="width:75px;" />
      </span>
    </div>
  </form>
4

4 回答 4

18

您可以使用 OR ( |) 运算符。

pattern="(No M(in|ax))|\d+"
于 2013-06-06T19:34:34.463 回答
2

由于您的模式是正则表达式,因此您的正则表达式模式可以有一个非此即彼的/或:

<input pattern ="(\d+)|(No Min)">
于 2013-06-06T19:33:42.080 回答
0

您可以使用正则表达式测试而不是输入元素的模式属性。

看到这个:

<script src="jquery-1.8.0.min.js"></script>
<script>
$(function(){

    $('form#form_searchProperty').submit(function(){
        var pat1 = /\d+|no min/i, pat2 = /\d+|no max/i;
        if (!pat1.test($('#input_propbath_min').val()) && !pat2.test($('#input_propbath_min').val()))
        {
            return false;
        }
    });

});
</script>

<form id="form_searchProperty"  >
    <div class="criteria_block">
        <span><label class="search_form_Label" for="propbath">Bathroom</label></span>
        <span>
            <input id="input_propbath_min" value="No Min" name="Min_Bathrooms" style="width:75px;"/>
            <input id="input_propbath_max" value="No Max" name="Max_Bathrooms" style="width:75px;" />
        </span>
    </div>
    <input type="submit" >
</form>
于 2013-06-06T19:46:06.943 回答
0

你可以使用这种格式

<input type="text" pattern="10453|10457" />

使用 | 添加任意数量的数字 符号。

于 2019-05-01T07:50:35.290 回答