HTML 양식이 제출시 JS 함수를 호출하지 않습니다.

Raitis

양식을 제출할 때 모든 필드가 채워져 있는지 확인하려고합니다. 그러나 모든 필드가 채워지지 않은 양식이 전송되는 것을 확인했습니다. 그래서 조사를 시작했고, 심지어 양식이 전송되지 않았 음을 의미하는 false를 반환해도 그렇습니다.

다음은 HTML 코드입니다.

<form action="addproduct.php" onsubmit="checkinput()" method="post">
        <style> <?php include 'css/addproduct.css'; ?> </style>
            <div class="iRow">
                <div class="lclass"> <label for="ProductSKU">Product SKU:</label> </div>
                <div class="tclass"> <input type="text" name="ProductSKU"> </div>
            </div>
            <div class="iRow">
                <div class="lclass"> <label for="ProductName">Product Name:</label> </div>
                <div class="tclass"> <input type="text" name="ProductName"> </div>
            </div>
            <div class="iRow">
                <div class="lclass"> <label for="ProductPrice">Product Price:</label> </div>
                <div class="tclass"> <input type="text" name="ProductPrice"> </div>
            </div>
            <div class="iRow dvd">
                <div class="lclass"> <label for="ProductSize">Product Size:</label> </div>
                <div class="tclass"> <input type="text" name="ProductSize"> </div>
            </div>
            <div class="iRow book">
                <div class="lclass"> <label for="ProductWeight">Product Weight:</label> </div>
                <div class="tclass"> <input type="text" name="ProductWeight"> </div>
            </div>
            <div class="iRow furniture">
                <div class="lclass"> <label for="ProductDimensions">Product Dimensions:</label> </div>
                <div class="tclass"> <input type="text" name="ProductDimensions"> </div>
            </div>
            <div class="iRow">
                <div class="lclass"> <label for="typeselector">Product Category</label> </div>
                <div class="tclass">
                    <select id="typeselector" name="productoptions" onchange="selectorhandle()">
                        <option value=""></option>
                        <option value="DVD">DVD-Disc</option>
                        <option value="Book">Book</option>
                        <option value="Furniture">Furniture</option>
                    </select>
                </div>
            </div>
            <input type="submit" value="Add Product" >
            <script>
                <?php include 'js/addproduct.js'; ?> <!-- Adding this javascript for the dynamic form -->
            </script>

        </form>

그리고 addproduct.js에는 다음이 있습니다.

function checkinput()
{
    return false;
}
고 피나 스

문제의 근본 원인은 'onsubmit' 속성에 의한 함수 호출에 있습니다.

onsubmit = "checkInput ()" 은 checkInput ()이 완료 될 때까지 기다리지 않고 checkInput () 함수와 제출 양식 만 호출합니다.

함수 / 단계가 완료 될 때까지 기다리지 않는 이러한 동작 (비동기 적 특성)은 자바 스크립트에 내재되어 있습니다.

명시 적으로 사용하여 문제를 해결할 수 있습니다.

onsubmit="return checkInput()"

대신에

onsubmit="checkInput()"

onsubmit을 사용하여 입력을 검증하는 작업 예제 :

<form action="addproduct.php" onsubmit="return checkInput()" method="post">
    <!-- form fields here -->
</form>

<script>
    function checkInput() {
         if( all_input_is_Valid ) {
             return true
         }
        return false
    }
</script>

추가 정보:

https://www.w3schools.com/js/js_validation.asp

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

html 양식 제출은 PHP를 호출하지만 리디렉션하지 않습니다.

분류에서Dev

jQuery Ajax HTML 양식 제출 호출이 호출 프로그램에 제어를 반환하지 않음

분류에서Dev

HTML onsubmit 이벤트가 JavaScript 함수를 호출하지 않습니다.

분류에서Dev

ng-repeat를 사용하고 HTML에서 함수를 호출 할 때 JSON 배열 값이 HTML 양식으로 전달되지 않습니다.

분류에서Dev

Enter를 누를 때 Vue.js 양식이 제출되지 않았습니다.

분류에서Dev

cordova webview가 양식 제출시 암호를 저장하지 않습니다.

분류에서Dev

양식이 PHP 및 jquery를 제출하지 않습니다.

분류에서Dev

HTML 양식 데이터로 JS 함수 호출

분류에서Dev

JavaScript 추가 HTML 양식이 제출되지 않습니다.

분류에서Dev

Codeigniter HTML 양식이 양식 제출시 Null입니다.

분류에서Dev

onclick이 함수를 호출하지 않습니다.

분류에서Dev

HTML 버튼 onclick 속성이 함수를 호출하지 않아 변경시 이상하게 작동합니다.

분류에서Dev

파이썬 주 함수는 다른 함수를 호출하지 않습니까?

분류에서Dev

제출 버튼이 양식 데이터를 제출하지 않는 이유는 무엇입니까? -HTML / 노드

분류에서Dev

Onclick HTML은 PHP "echo"내에서 Javascript 함수를 호출하지 않습니다.

분류에서Dev

양식은 매개 변수를 제출하지 않습니다.

분류에서Dev

양식이 ajax를 통해 제출되지 않습니다.

분류에서Dev

Node.js의 Promise.all은 then 함수를 호출하지 않습니다.

분류에서Dev

Jquery 양식 제출이 AJAX와 작동하지 않으며 Rails가 index.html.erb를 설명 할 수 없게 다시 렌더링합니다.

분류에서Dev

HTML, PHP : 양식 제출 후 변수가 표시되지 않음

분류에서Dev

HTML 양식이 제출되지 않음

분류에서Dev

Google 양식 제출 이벤트 : TypeError : 정의되지 않은 "getRow"메소드를 호출 할 수 없습니다.

분류에서Dev

양식이 PHP에 데이터를 제출하지 않습니다.

분류에서Dev

양식이 모바일에서 데이터를 제출하지 않습니다.

분류에서Dev

HTML 양식이 서버에 데이터를 제출하지 않음

분류에서Dev

onClick 이벤트를 사용하여 호출 된 주요 JS 함수에서 호출되지 않는 함수

분류에서Dev

ClearInterval은 호출 이벤트 JS를 제거하거나 제거하지 않습니다.

분류에서Dev

JS 함수는 다시 호출 될 때 다른 qr 코드 객체를 생성하지 않습니다.

분류에서Dev

HTML 양식 제출에서 데이터를 보내지 않음

Related 관련 기사

  1. 1

    html 양식 제출은 PHP를 호출하지만 리디렉션하지 않습니다.

  2. 2

    jQuery Ajax HTML 양식 제출 호출이 호출 프로그램에 제어를 반환하지 않음

  3. 3

    HTML onsubmit 이벤트가 JavaScript 함수를 호출하지 않습니다.

  4. 4

    ng-repeat를 사용하고 HTML에서 함수를 호출 할 때 JSON 배열 값이 HTML 양식으로 전달되지 않습니다.

  5. 5

    Enter를 누를 때 Vue.js 양식이 제출되지 않았습니다.

  6. 6

    cordova webview가 양식 제출시 암호를 저장하지 않습니다.

  7. 7

    양식이 PHP 및 jquery를 제출하지 않습니다.

  8. 8

    HTML 양식 데이터로 JS 함수 호출

  9. 9

    JavaScript 추가 HTML 양식이 제출되지 않습니다.

  10. 10

    Codeigniter HTML 양식이 양식 제출시 Null입니다.

  11. 11

    onclick이 함수를 호출하지 않습니다.

  12. 12

    HTML 버튼 onclick 속성이 함수를 호출하지 않아 변경시 이상하게 작동합니다.

  13. 13

    파이썬 주 함수는 다른 함수를 호출하지 않습니까?

  14. 14

    제출 버튼이 양식 데이터를 제출하지 않는 이유는 무엇입니까? -HTML / 노드

  15. 15

    Onclick HTML은 PHP "echo"내에서 Javascript 함수를 호출하지 않습니다.

  16. 16

    양식은 매개 변수를 제출하지 않습니다.

  17. 17

    양식이 ajax를 통해 제출되지 않습니다.

  18. 18

    Node.js의 Promise.all은 then 함수를 호출하지 않습니다.

  19. 19

    Jquery 양식 제출이 AJAX와 작동하지 않으며 Rails가 index.html.erb를 설명 할 수 없게 다시 렌더링합니다.

  20. 20

    HTML, PHP : 양식 제출 후 변수가 표시되지 않음

  21. 21

    HTML 양식이 제출되지 않음

  22. 22

    Google 양식 제출 이벤트 : TypeError : 정의되지 않은 "getRow"메소드를 호출 할 수 없습니다.

  23. 23

    양식이 PHP에 데이터를 제출하지 않습니다.

  24. 24

    양식이 모바일에서 데이터를 제출하지 않습니다.

  25. 25

    HTML 양식이 서버에 데이터를 제출하지 않음

  26. 26

    onClick 이벤트를 사용하여 호출 된 주요 JS 함수에서 호출되지 않는 함수

  27. 27

    ClearInterval은 호출 이벤트 JS를 제거하거나 제거하지 않습니다.

  28. 28

    JS 함수는 다시 호출 될 때 다른 qr 코드 객체를 생성하지 않습니다.

  29. 29

    HTML 양식 제출에서 데이터를 보내지 않음

뜨겁다태그

보관