Chức năng gọi sau khi gửi biểu mẫu JavaScript

Nhà phát triển web thường sẽ sử dụng hàm JavaScript để gửi biểu mẫu JavaScript khi họ muốn thay đổi loại nội dung thành JSON để gửi phía máy chủ thông qua yêu cầu HTTP

Chức năng gọi sau khi gửi biểu mẫu JavaScript

Mục lục

Giới thiệu

Từ khi một người ở đất nước này trở thành một thanh niên, anh ta sẽ thường thấy mình trong tình huống điền vào biểu mẫu HTML. Nó có thể là một cái gì đó đơn giản và trần tục như đăng ký để sử dụng ứng dụng truyền thông xã hội yêu thích của anh ấy hoặc cô ấy

Như đã nói, có nhiều trường hợp sử dụng trong Phát triển web trong đó Ứng dụng web sẽ phải xử lý hành vi gửi biểu mẫu và có một số cách để gửi biểu mẫu. Có thể xử lý việc gửi biểu mẫu bằng thuộc tính hành động của

phần tử hoặc nhà phát triển có thể chọn sử dụng chức năng javascript thay thế. Tất nhiên, một nhà phát triển cũng có thể làm cả hai

Để sử dụng thuộc tính hành động của thành phần biểu mẫu, biểu mẫu sẽ giống như sau

Trong ví dụ trên, loại nội dung là application/x-www-form-urlencoded. Loại nội dung này thường được xử lý bởi tệp PHP. URL của tệp PHP này sẽ là giá trị của thuộc tính hành động

Mặt khác, nhà phát triển web thường sẽ sử dụng hàm JavaScript khi họ muốn thay đổi loại nội dung thành JSON để gửi phía máy chủ thông qua yêu cầu HTTP. Hàm javascript này có thể được gọi từ các thuộc tính cụ thể trên hoặc trong biểu mẫu hoặc sự kiện gửi có thể được sử dụng làm tham số trong phương thức addEventListener. Chúng tôi thường gọi hàm JavaScript này là trình xử lý sự kiện. Trình xử lý sự kiện lấy một đối tượng sự kiện làm một trong các tham số của nó

Hãy nhìn vào một số mã

Một ví dụ khá đơn giản về biểu mẫu HTML sẽ như sau


   

Subscribe

Ở trên, là mã HTML của một hình thức đăng ký phổ biến. Trong số những thứ khác, biểu mẫu HTML này chứa hai phần tử


   

Subscribe

02 đại diện cho các trường văn bản. Một phần tử

   

Subscribe

02 ghi lại tên của người dùng và phần tử còn lại ghi lại email của người dùng. Và có nút gửi để xử lý dữ liệu sau khi người dùng nhập xong vào biểu mẫu

Nhà phát triển cũng có thể sử dụng


   

Subscribe

02 thay vì phần tử. Phần tử nút thường được sử dụng khi nhà phát triển dự định tạo kiểu bổ sung cho nút

Một ví dụ về trình xử lý sự kiện xử lý sự kiện gửi của biểu mẫu HTML ở trên sẽ như sau


Người giới thiệu

1. “Hình thức – Phản ứng. ” Phản ứng, https. //reacjs. org/tài liệu/biểu mẫu. html. Truy cập ngày 21 tháng 8 năm 2022

2. “sự kiện onsubmit. ” W3Schools, https. //www. w3schools. com/jsref/event_onsubmit. asp. Truy cập ngày 21 tháng 8 năm 2022

3. “HTMLFormElement. gửi sự kiện - API Web. MDN. ” MDN Web Docs, ngày 9 tháng 7 năm 2022, https. // nhà phát triển. mozilla. org/en-US/docs/Web/API/HTMLFormElement/submit\_event. Truy cập ngày 21 tháng 8 năm 2022

4. “Gửi biểu mẫu dữ liệu - Tìm hiểu phát triển web. MDN. ” MDN Web Docs, ngày 15 tháng 8 năm 2022, https. // nhà phát triển. mozilla. org/en-US/docs/Learn/Forms/Sending\_ and\_ retrieving\form\data. Truy cập ngày 21 tháng 8 năm 2022

Bản tóm tắt. trong hướng dẫn này, bạn sẽ tìm hiểu về JavaScript form API. truy cập biểu mẫu, nhận giá trị của các phần tử, xác thực dữ liệu biểu mẫu và gửi biểu mẫu

Khái niệm cơ bản về biểu mẫu

Để tạo biểu mẫu trong HTML, bạn sử dụng phần tử

document.forms

Code language: JavaScript (javascript)
9

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)

Phần tử

document.forms

Code language: JavaScript (javascript)
9 có hai thuộc tính quan trọng.

document.forms[0]

Code language: CSS (css)
1 và

document.forms[0]

Code language: CSS (css)
2

  • Thuộc tính

    document.forms[0]

    Code language: CSS (css)
    1 chỉ định một URL sẽ xử lý việc gửi biểu mẫu. Trong ví dụ này, hành động là URL

    document.forms[0]

    Code language: CSS (css)
    4
  • Thuộc tính

    document.forms[0]

    Code language: CSS (css)
    2 chỉ định phương thức HTTP để gửi biểu mẫu với. Thông thường, phương pháp này là

    document.forms[0]

    Code language: CSS (css)
    6 hoặc

    document.forms[0]

    Code language: CSS (css)
    7

Nói chung, bạn sử dụng phương pháp

document.forms[0]

Code language: CSS (css)
7 khi muốn lấy dữ liệu từ máy chủ và phương pháp

document.forms[0]

Code language: CSS (css)
6 khi bạn muốn thay đổi dữ liệu trên máy chủ

JavaScript sử dụng đối tượng


   

Subscribe

50 để biểu diễn một biểu mẫu.

   

Subscribe

50 có các thuộc tính sau tương ứng với các thuộc tính HTML

  • document.forms[0]

    Code language: CSS (css)
    1 – là URL xử lý dữ liệu biểu mẫu. Nó tương đương với thuộc tính

    document.forms[0]

    Code language: CSS (css)
    1 của phần tử

    document.forms

    Code language: JavaScript (javascript)
    9
  • document.forms[0]

    Code language: CSS (css)
    2 – là phương thức HTTP tương đương với thuộc tính

    document.forms[0]

    Code language: CSS (css)
    2 của phần tử

    document.forms

    Code language: JavaScript (javascript)
    9

Phần tử


   

Subscribe

50 cũng cung cấp các phương thức hữu ích sau

  • 
       

    Subscribe

    59 – gửi biểu mẫu
  • 
    
    50 – đặt lại biểu mẫu

biểu mẫu tham khảo

Để tham chiếu phần tử

document.forms

Code language: JavaScript (javascript)
9, bạn có thể sử dụng các phương thức chọn DOM như

52


8

Một tài liệu HTML có thể có nhiều biểu mẫu. Thuộc tính


53 trả về một tập hợp các biểu mẫu (

54) trên tài liệu

document.forms

Code language: JavaScript (javascript)

Để tham khảo một biểu mẫu, bạn sử dụng một chỉ mục. Ví dụ: câu lệnh sau trả về dạng đầu tiên của tài liệu HTML

document.forms[0]

Code language: CSS (css)

Gửi biểu mẫu

Thông thường, một biểu mẫu có một nút gửi. Khi bạn nhấp vào nó, trình duyệt sẽ gửi dữ liệu biểu mẫu đến máy chủ. Để tạo nút gửi, bạn sử dụng phần tử


55 hoặc

56 với loại

57


   

Subscribe

5

Hoặc


5

Nếu nút gửi có tiêu điểm và bạn nhấn phím


58, thì trình duyệt cũng gửi dữ liệu biểu mẫu

Khi bạn gửi biểu mẫu, sự kiện


57 sẽ được kích hoạt trước khi yêu cầu được gửi đến máy chủ. Điều này cho bạn cơ hội xác thực dữ liệu biểu mẫu. Nếu dữ liệu biểu mẫu không hợp lệ, bạn có thể ngừng gửi biểu mẫu

Để đính kèm một trình lắng nghe sự kiện vào sự kiện


57, bạn sử dụng phương thức

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
11 của phần tử biểu mẫu như sau

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
1

Để dừng gửi biểu mẫu, bạn gọi phương thức

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
12 của đối tượng

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
13 bên trong trình xử lý sự kiện

57 như thế này

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
6

Thông thường, bạn gọi phương thức

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
15 nếu dữ liệu biểu mẫu không hợp lệ. Để gửi biểu mẫu trong JavaScript, bạn gọi phương thức

   

Subscribe

59 của đối tượng biểu mẫu

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
9

Lưu ý rằng

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
17 không kích hoạt sự kiện

57. Do đó, bạn phải luôn xác thực biểu mẫu trước khi gọi phương thức này

Truy cập các trường biểu mẫu

Để truy cập các trường biểu mẫu, bạn có thể sử dụng các phương thức DOM như

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
19,

52,

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
61, v.v.

Ngoài ra, bạn có thể sử dụng thuộc tính

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
62 của đối tượng

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
63. Thuộc tính

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
64 lưu trữ một tập hợp các phần tử biểu mẫu

JavaScript cho phép bạn truy cập một phần tử theo chỉ mục, id hoặc tên. Giả sử rằng bạn có biểu mẫu đăng ký sau với hai phần tử


55

document.forms

Code language: JavaScript (javascript)
9

Để truy cập các phần tử của biểu mẫu, trước tiên bạn lấy phần tử biểu mẫu


80

Và sử dụng chỉ mục, id hoặc tên để truy cập phần tử. Phần sau truy cập phần tử biểu mẫu đầu tiên


81

Phần sau truy cập phần tử đầu vào thứ hai


82

Sau khi truy cập một trường biểu mẫu, bạn có thể sử dụng thuộc tính

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
66 để truy cập giá trị của nó, chẳng hạn


83

Đặt nó tất cả cùng nhau. hình thức đăng ký

Sau đây minh họa tài liệu HTML có biểu mẫu đăng ký. Xem demo trực tiếp tại đây


84

Tài liệu HTML tham khảo các tệp

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
67 và

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
68. Nó sử dụng phần tử

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
69 để hiển thị thông báo lỗi trong trường hợp phần tử

55 có dữ liệu không hợp lệ

Gửi biểu mẫu mà không cung cấp bất kỳ thông tin nào sẽ dẫn đến lỗi sau

Chức năng gọi sau khi gửi biểu mẫu JavaScript
Chức năng gọi sau khi gửi biểu mẫu JavaScript

Gửi biểu mẫu có tên nhưng định dạng địa chỉ email không hợp lệ sẽ dẫn đến lỗi sau

Chức năng gọi sau khi gửi biểu mẫu JavaScript
Chức năng gọi sau khi gửi biểu mẫu JavaScript

Phần sau hiển thị tệp

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
91 hoàn chỉnh


85

Làm thế nào nó hoạt động

Hàm showMessage()

Hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
92 chấp nhận một phần tử đầu vào, một thông báo và một loại


86

Sau đây hiển thị trường nhập tên trên biểu mẫu


87

Nếu giá trị của tên trống, trước tiên bạn cần lấy cha của nó là

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
93 với lớp “trường”


88

Tiếp theo, bạn cần chọn phần tử

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
69


89

Sau đó, cập nhật tin nhắn

document.forms

Code language: JavaScript (javascript)
0

Sau đó, chúng tôi thay đổi lớp CSS của trường đầu vào dựa trên giá trị của tham số loại. Nếu loại là đúng, chúng tôi thay đổi lớp của đầu vào thành công. Nếu không, chúng tôi thay đổi lớp thành lỗi

document.forms

Code language: JavaScript (javascript)
1

Cuối cùng, trả về giá trị của loại

document.forms

Code language: JavaScript (javascript)
2

Hàm showError() và showSuccess()

Các hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
95 và

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
96 gọi hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
92. Hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
95 luôn trả về

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
99 trong khi hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
96 luôn trả về

document.forms

Code language: JavaScript (javascript)
91. Ngoài ra, hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
96 đặt thông báo lỗi thành một chuỗi trống

document.forms

Code language: JavaScript (javascript)
3

Hàm hasValue()

Hàm

document.forms

Code language: JavaScript (javascript)
93 kiểm tra xem một phần tử đầu vào có giá trị hay không và hiển thị thông báo lỗi bằng cách sử dụng hàm

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
95 hoặc

<form action="/signup" method="post" id="signup"> </form>

Code language: HTML, XML (xml)
96 tương ứng

document.forms

Code language: JavaScript (javascript)
4

Hàm xác thựcEmail()

Hàm

document.forms

Code language: JavaScript (javascript)
96 xác thực nếu trường email chứa địa chỉ email hợp lệ

document.forms

Code language: JavaScript (javascript)
5

Hàm

document.forms

Code language: JavaScript (javascript)
96 gọi hàm

document.forms

Code language: JavaScript (javascript)
93 để kiểm tra xem giá trị trường có trống không. Nếu trường đầu vào trống, nó sẽ hiển thị

document.forms

Code language: JavaScript (javascript)
99

Để xác thực email, nó sử dụng biểu thức chính quy. Nếu email không hợp lệ, hàm

document.forms

Code language: JavaScript (javascript)
96 hiển thị

801

Điều gì xảy ra khi một biểu mẫu được gửi bằng JavaScript?

Sự kiện gửi kích hoạt khi biểu mẫu được gửi , sự kiện này thường được sử dụng để xác thực biểu mẫu trước khi gửi tới máy chủ hoặc hủy bỏ gửi và xử lý biểu mẫu trong JavaScript. hình thức phương pháp.

Làm cách nào để gọi hàm JavaScript mà không cần nhấp vào nút trong HTML?

Bạn gọi một biến JavaScript trong HTML như thế nào? .
Hiển thị biến bằng tài liệu. viết phương pháp
Hiển thị biến thành nội dung phần tử HTML bằng thuộc tính InternalHTML
Hiển thị biến bằng cửa sổ. phương thức cảnh báo ()