【问题标题】:jQuery Mask Plugin Can't start with letter 'S'jQuery Mask 插件不能以字母“S”开头
【发布时间】:2019-02-11 15:24:31
【问题描述】:

我想对输入使用掩码,以 SPPT 开头。 PT 输入工作正常,但 SP 不能。请注意,这不是我的真实代码,这只是一个示例。

$('#partshort').mask('SP-00000000000');
$('#svpshort').mask('PT-00000000000');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript" src="http://igorescobar.github.io/jQuery-Mask-Plugin/js/jquery.mask.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap-theme.min.css">
<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<div class="container">
  <h3>Problems with jQuery Mask Plugin?</h3>
  <p>Exemplify your problem here :-)</p>
  <hr />
  <form role="form">
    <div class="form-group">
      <label for="date-field">Example 1</label>
      <input type="text" class="form-control" id="partshort">
    </div>
    <div class="form-group">
      <label for="ip-field">Example 2</label>
      <input type="text" class="form-control" id="svpshort">
    </div>
  </form>
</div>

示例如下:http://jsfiddle.net/1wjbysnm/

【问题讨论】:

    标签: javascript jquery jquery-mask


    【解决方案1】:

    问题是因为Mask库中的S字符有特殊含义:

    默认情况下,jQuery Mask Plugin 仅识别逻辑数字 A(数字和字母)和 S(A-Za-z),但您可以扩展或修改此行为

    https://igorescobar.github.io/jQuery-Mask-Plugin/docs.html#translation

    要解决您的问题,您可以简单地删除 S 字符翻译,使其行为与任何标准字符一样:

    $('#partshort').mask('SP-00000000000', {
      translation: { S: null }
    });
    $('#svpshort').mask('PT-00000000000');
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script type="text/javascript" src="http://igorescobar.github.io/jQuery-Mask-Plugin/js/jquery.mask.min.js"></script>
    <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css">
    <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap-theme.min.css">
    <script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
    <div class="container">
      <h3>Problems with jQuery Mask Plugin?</h3>
      <p>Exemplify your problem here :-)</p>
      <hr />
      <form role="form">
        <div class="form-group">
          <label for="date-field">Example 1</label>
          <input type="text" class="form-control" id="partshort">
        </div>
        <div class="form-group">
          <label for="ip-field">Example 2</label>
          <input type="text" class="form-control" id="svpshort">
        </div>
      </form>
    </div>

    【讨论】:

    • 感谢您的回复。有点退学,安德烈·贡萨尔维斯
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-15
    • 2015-02-08
    • 2018-03-27
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多