>source

HTML 웹사이트에서 작업 중이고 한 가지 상황에 약간 갇혔습니다.

고객이 전화번호 필드를 수락하고 10자리 전화번호(예: +917894561236) 앞에 +91을 입력하고 그는 +91을 추가하지 않았습니다. 필드는 10자리 전화번호도 허용해야 하지만 10자리 이상이어야 합니다.

여기 내 html이 있습니다:

<div class="form-group">  <label for="">Phone number *</label>  <input type="text" class="form-control" minlength=10 required name="phone_m" id="phoned"
         placeholder="Enter Your Phone Number" pattern="^(\+91[\-\s]?)?[0]?(91)?[6789]\d{9}$"
         oninput="if (typeof this.reportValidity=== 'function') {this.reportValidity();}" /></div>

아래 jQuery 스크립트는 전화 필드에서 알파벳을 제거하는 데 사용되지만 추가유형="전화"입력 필드에서 사용자가 알파벳을 입력하는 것을 멈추지 않습니다.

<script>//to get only numeric values in phone number field
jQuery('#phoned').keyup(function () {
    this.value= this.value.replace(/[^0-9+\.-]/g, '');
});
</script>

입력은 type='tel'이어야 하며 요구 사항을 충족하기 위해 Regex를 사용하는 패턴 속성을 추가할 수 있습니다. 이렇게 하면 maxlength를 제거할 수 있으며 자리 표시자는 사용자를 혼동하지 않도록 예상 패턴과 일치해야 합니다.

lbragile2022-02-03 21:38:39

원하는 결과를 얻으려면 정규식을 사용하십시오. maxlength를 제거하면 +91을 허용하거나 manlength를 13(휴대전화 번호의 경우 10자리, +91의 경우 3자리/문자)으로 사용할 수 없습니다. 최소 길이를 10으로 사용할 수 있으며 10자리 휴대폰 번호가 필요합니다. 휴대폰 번호를 일치시키려면 [6-9]{1}[0-9]{9}를 사용할 수 있습니다. 여기서 번호는 6 또는 7 또는 8 또는 9로 시작하고 나머지 9자리는 임의일 수 있습니다. +91을 일치시키기 위해 비슷한 일을 할 수 있습니다

Not A Bot2022-02-03 21:38:39

@Cre 페이지 전체에 code 요구 사항을 뿌리면 안됩니다. 허용되어야 하거나 허용해서는 안 되는 몇 가지 샘플 문자열을 제공하면 질문이 더 명확해집니다. 조사하고 스스로 해결하려고 시도했다는 증거가 없기 때문에 귀하는 반대 투표를 받고 있습니다. 우리는 "당신을 위해 당신의 일을 수행"하기 위한 것이 아니라, 당신이 실패한 시도를 수정하도록 돕기 위해 여기 있습니다. "Help Vampirism"은 나쁘다.

mickmackusa2022-02-03 21:38:39

@Don 편집으로 인해 질문을 다시 열 수 있는 좋은 후보가 되지 않는 한 닫힌 질문을 편집하지 마십시오. 내가 이것을 말하는 이유는 귀하의 편집으로 인해 이 질문이 Reopen Queue에 배치되었지만 OP가 더 명확성/세부 사항을 제공해야 하기 때문입니다.

mickmackusa2022-02-03 21:38:39

알겠습니다. 죄송합니다. 제안된 편집 검토 대기열에 나타납니다. 편집을 승인했지만 직접 개선했습니다. 닫힌 질문을 편집하지 않도록 참고하겠습니다. 지적해 주셔서 감사합니다.

Don't Panic2022-02-03 21:38:39
  • 이전 VS Code docker-compose를 사용하여 Docker에서 Python 실행 및 디버그
  • 다음 cmake : opentelemetry-cpp를 빌드하면 오류가 발생합니다.