2016-08-31 2 views
-2

일부 입력 컨트롤이있는 HTML 페이지에서 작업하고 있습니다. 이 입력 컨트롤에서 사용자는 부동 소수점 숫자를 입력해야합니다. "1234,56"앞에/쉼표와 두 개의 정수 뒤에 최대 4 개의 정수가 있습니다. 값을 입력하는 동안 또는 값을 입력 한 후 (점의 앞뒤에있는 정수/쉼표, 정수만)를 어떻게 알 수 있습니까?HTML 입력에 입력 된 사용자 값이 부동 소수점 숫자인지 확인합니다.

미리 감사드립니다.

+0

나중에 참조 할 수 있습니다.이 질문은 사용자 자신의 문제도 시도 할 필요가 없으므로이 질문에 대한 답을 얻을 가능성이 높습니다. 이 사이트는 프리랜서 작업을 수행하는 사이트가 아니라 올바르게 작동하지 않는 코드에 대한 도움을 얻으려는 사이트입니다. – leigero

+0

미안하지만, 많은 개발자들이 같은 문제를 겪고 있다는 것을 알고 있기 때문에 나는이 질문을 덧붙였다. 나는 그것을 공개하기를 원했기 때문에 모든 사람들이 그것의 혜택을 볼 수있다. –

+0

어리석은 저, 당신이 당신의 자신의 질문에 대답했다는 것을 깨달았 기 때문에 기본적으로 여기에서 계속되고 있다고 생각되는 모든 것을 무효로합니다. 계속해라. – leigero

답변

1

입력란의 pattern 속성과 패턴을 값과 비교하기위한 제출 버튼을 사용하여 양식에 컨트롤을 배치하면됩니다.

첫 번째 예 :

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     <title>Checking floatnumbers</title> 
     <meta charset="utf-8" /> 
    </head> 
    <body> 
     <form> 
      <input type="text" 
        maxlength="7" 
        placeholder="____,__" 
        title="Please use format ####,##" 
        pattern="\d{1,4}(|\.|,)?\d{1,2}" /> 
      <br /> 

      <!-- For testing input patterns --> 
      <input type="submit" 
        value="Submit" /> 
      <br /><br /> 

      <!-- Resets/clears the form --> 
      <input type="reset" 
        value="Reset" /> 
     </form> 
    </body> 
</html> 

먼저 입력이 평소와 같이하지 "숫자"유형 "텍스트"이어야합니다. 패턴은 사용자가 포인트 나 쉼표 앞에 1 ~ 4 개의 숫자를 입력 할 수 있어야한다는 것을 의미합니다. 포인트/쉼표와 다음 1 - 2 소수를 입력 할 수 있지만 반드시 입력해야하는 것은 아닙니다.

사용자가 p. "12345"를 입력하고 제출 버튼을 클릭하면 속성 제목의 텍스트에 오류가 표시됩니다.

일부 사용자는 "1,23"과 같이 숫자를 입력하고 싶지 않을 수도 있지만 급하게 있기 때문에 "23"이라고 입력해야 할 수도 있습니다. 두 번째 예를 살펴 보겠습니다.

두 번째 예 :

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     <title>Checking floatnumbers</title> 
     <meta charset="utf-8" /> 
    </head> 
    <body> 
     <form> 
      <input type="text" 
        maxlength="7" 
        placeholder="____,__" 
        title="Please use format ####,##" 
        pattern="\d{0,4}(|\.|,)?\d{1,2}" /> 
      <br /><br /> 

      <!-- For testing input patterns --> 
      <input type="submit" 
        value="Submit" /> 
      <br /><br /> 

      <!-- Resets/clears the form --> 
      <input type="reset" 
        value="Reset" /> 
     </form> 
    </body> 
</html> 

당신은 포인트/쉼표하기 전에 입력을 볼 수있는 0의 최소 4 그래서 같은 floatnumber를 입력하는 것이 가능 최대 "23있다 ".

그리고 우리는 입력에 negativ floatnumbers을 입력 할 경우, 우리는 여전히 같은 번호를 입력 할 수 있습니다 위의 우리가 패턴으로 8

또한 통지"^[+-]?\d{0,4}(|\.|,)?\d{1,2}"에 패턴과 최대 길이를 변경 "12345" 우리의 경우에는 정확하지 않습니다. 올바른 패턴은 다음과 같아야합니다. "^[+-]?\d{1,4}((\.|,)\d{1,2})?" 또는 "^[+-]?\d{0,4}((\.|,)\d{1,2})?"

관련 문제