spz-phonenumber 手机号输入框

支持布局: container

何时使用

  • 需要使用带有国家旗子的选择列表来修改输入框的区号。
  • 需要校验手机号是否合法。

代码演示

基本用法

  • 必须有一个 input 子元素。
  • 如果需要支持手机区号选择功能,必须有一个带有 role="phone-area" 属性的子元素,标识一个手机区号选择的根节点。
    • role="flag" 标识一个展示国旗的元素,当切换了不同国家区号,会自动修该元素的背景图片。
    • role="areacode" 标识一个手机区号选择器,组件会将手机区号数据加入当前元素。
<spz-phonenumber
  layout="container"
  phone-pattern="[\+0-9\(\).\s-]+"
  default-country="CN"
  default-phone-code="86"
>
  <input
    id="email_or_phone"
    name="email_or_phone"
    type="text"
    required
    pattern="([a-zA-Z0-9!#$%&'*+\\/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+\\/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?)|([\+0-9\(\).\s-]+)"
  >
  <label for="email_or_phone">Email or Phone</label>
  <div validation-for="email_or_phone" visible-when-invalid="customError" hidden>Please enter a valid phone</div>
  <div validation-for="email_or_phone" visible-when-invalid="valueMissing" hidden>Enter a valid Email / phone number</div>

  <div role="phone-area" hidden>
    <div role="flag"></div>
    <select role="areacode">
      <option value="" disabled>*</option>
    </select>
  </div>
</spz-phonenumber>

属性

属性名说明类型默认值是否必需
phone-pattern手机号校验正则表达式,由引号而不是斜杠包围string-否,除非有带有 role="phone-area" 属性的子元素
default-country默认的两个字母的国家代码,例如:CNstring-否,除非有带有 role="phone-area" 属性的子元素
default-phone-code默认的手机区号,例如:86string-否,除非有带有 role="phone-area" 属性的子元素

AI 摘要(LLM Ready)

  • 组件标识spz-phonenumber
  • 用途一句话:展示可通过国家旗子选择区号的输入框。
  • 可识别属性条目:3
  • 可识别方法小节:0
  • 可识别事件小节:0
  • 关键属性名(Top)phone-patterndefault-countrydefault-phone-code
  • 关键方法名(Top):无(待补充)
  • 关键事件名(Top):无(待补充)
  • 阅读顺序建议:先看「何时使用」与「代码演示」,再核对属性/方法/事件。
  • 关联文档/guide/actions-and-events//guide/layouts/