Thuộc tính method trong đối tượng form có tác dụng gì ?

Trong bài này mình sẽ giới thiệu đến các bạn sự kiện submit form trong Javascript, đây là sự kiện giúp bạn kiểm soát được hành động submit form của người dùng khi họ click vào button submit.

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Khi gửi dữ liệu lên server thì thường ta phải kiểm tra định dạng dữ liệu mà người dùng nhập vào có phù hợp hay không, điều này giúp giảm tải ở phía server trong một số trường hợp.

Ví dụ bạn tạo một form login, nếu bạn không dùng Javascript để yêu cầu người dùng nhập đủ thông tin tên đăng nhập và mật khẩu thì rất dễ bị họ submit liên tục, điều này tạo ra một sức ép về phía server. Đương nhiên phía server phải rtải qua một bước validate data nữa rồi mới cập nhật vào cơ sở dữ liệu.

1. Khai báo sự kiện submit bằng thẻ HTML form

Thẻ HTML form có sự kiện onsubmit, đây chính là nơi mà bạn gọi đến hàm xử lý trước khi hành động submit xảy ra.

Bài viết này được đăng tại [free tuts .net]

Lưu ý rằng hàm validate phải trả về kiểu boolean nhé:

  • Trả về true thì cho phép submit form
  • Trả về false thì không submit form

Bạn hãy thử tạo một input submit bên trong thẻ form, sau đó thiết lập code ở onsubmit là return false thì khi bạn click vào button submit đó sẽ không có hiệu ứng gì.

Nhưng khi bạn đổi sang return true thì sẽ có hiệu ứng ngay.

Tóm lại: Nội dung bên trong hàm validate không quan trọng, mà sự kiện này chỉ quan tâm đến giá trị return true / false của dòng return nằm bên trong sự kiện mà thôi.

2. Gọi đến một hàm Javascript khi submit

Có ba cách để gọi đến một hàm Javascript khi submit form như sau.

Cách 1: Sử dụng HTML như ở phần 1.

Cách 2: Sử dụng phương thức addEventListener().

formObj.addEventListener("submit", functionName);

Cách 3: Sử dụng thuộc tính onsubmit của đối tượng form.

formObj.onsubmit = function(){functionName};

Khi sử dụng thuộc tính này thì nó sẽ thay thế đoạn code bên trong thuộc tính onsubmit của thẻ form, vì vậy những đoạn mã JS nằm bên trong thẻ form đó sẽ bị thay thể bởi function mà bạn đã gán.

Ví dụ: Mình sử dụng cách hai nhé.

3. Dùng Javascript để submit form

Ngoài cách sử dụng một thẻ input submit thì bạn cũng có thể sử dụng Javascript để thực hiện một hành động submit form.

Giả sử mình có thẻ input button như sau:

Nếu click vào button này thì sẽ không xảy ra sự kiện submit form, bởi đây là một button chứ khong phải button submit.

Bây giờ ta sẽ bổ đoạn code khi click vào button đó thì gọi đến phương thức submit() của form để kích hoạt sự kiện.

Bạn hãy thử click vào button thì sẽ thấy xảy ra sự kiện submit form.

Như vậy là mình đã hướng dẫn xong cách sử dụng Javascript để submit form, cũng như các thao tác thường gặp khi làm việc với form trong Javascript.

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Thuộc tính method trong đối tượng form có tác dụng gì ?

Đối với một website bên cạnh việc sở hữu thiết kế đẹp mắt, nội dung hấp dẫn để thu hút, phục vụ khách hàng thì việc thu thập dữ liệu, lắng nghe ý kiến, mong muốn của khách cũng là một phần quan trọng góp phần nâng cao trải nghiệm người dùng. Chính vì lí do đó thẻ form ra đời. Vậy thẻ form trong html có gì đặc biệt, nó có khó không? Chúng ta cùng nhau tìm hiểu nhé!

1. Cấu trúc cơ bản của một thẻ form

Về cơ bản thẻ form có cấu trúc như sau:

<form action = "Chỉ ra địa chỉ URL mà dữ liệu của form gửi đến" method = "GET|POST"> form>

Trong đó:

  • action: Là URL cho trang trên máy chủ sẽ nhận thông tin trong biểu mẫu khi nó được gửi. Mọi thẻ
    đều yêu cầu một thuộc tính action.
  • method: Có thể gửi form bằng một trong hai phương thức: GET hoặc POST.
  • Với phương thức GET: Các giá trị từ form được thêm vào cuối URL được chỉ định trong thuộc tính action. Phương thức GET thường được sử dụng cho: form ngắn (chẳng hạn như hộp tìm kiếm) khi bạn chỉ truy xuất dữ liệu từ máy chủ web (không gửi thông tin cần được thêm vào hoặc xóa khỏi cơ sở dữ liệu)
  • Với phương thức POST: Bạn nên sử dụng phương thức POST nếu form của bạn: cho phép người dùng tải lên một tệp rất dài chứa dữ liệu nhạy cảm (ví dụ: mật khẩu) thêm thông tin vào hoặc xóa thông tin khỏi cơ sở dữ liệu.
  • Nếu thuộc tính method không được sử dụng, dữ liệu form sẽ được gửi bằng phương thức GET. Sử dụng phương thức POST sẽ an toàn hơn.

Mỗi một trang web đều có những form khác nhau từ tìm kiếm đến đăng nhập, đăng kí...Form trong HTML có chứa các phần tử hình thức cho phép chúng ta thực hiện điều đó ( là các kiểu phần tử lấy dữ liệu đầu vào như điền vào trường văn bản, hộp checkbox, nút bấm, nút gửi…). Bây giờ chúng ta sẽ lần lượt tìm hiểu các thẻ trong form.

2. Nhóm thẻ trong HTML

Đây là phần tử quan trọng nhất của form, nó có thể hiển thị theo nhiều cách, tùy vào kiểu thuộc tính mà chúng ta mong muốn.

Dữ liệu đầu vào là văn bản

Khi thuộc tính type="text", nó sẽ tạo ra một một dòng. để nhập dữ liệu dưới dạng văn bản. Ví dụ:

<html> <head> <title>Thẻ Form HTMLtitle> <meta charset="utf-8"> head> <body> <form action="https://www.suntech.edu.vn/login.php"> <p>Username:   <input type="text" name="Username" size="15" maxlength="30" /> p> form> body> html>

Kết quả:

Thuộc tính method trong đối tượng form có tác dụng gì ?

Trong đó

  • name: Khi người dùng nhập thông tin vào form, máy chủ cần biết kiểm soát form nào từng phần dữ liệu được nhập vào. Do đó, mỗi form yêu cầu một thuộc tính name. Giá trị của thuộc tính này sẽ được gửi cùng với thông tin mà khách nhập đến máy chủ.
  • size: Xác định kích thước (tính bằng kí tự) cho trường nhập dữ liệu.
  • maxlength: Xác định độ dài tối đa cho trường nhập dữ liệu.

Dữ liệu đầu vào là password

Khi thuộc tính type="password", nó sẽ tạo ra một một dòng để nhập dữ liệu dưới dạng văn bản giống như text. Tuy nhiên chúng được ẩn theo để nếu có ai đó đang ở bên cạnh, họ không thể nhìn thấy dữ liệu nhạy cảm như mật khẩu. Ví dụ:

<html> <head> <title>Thẻ Form HTMLtitle> <meta charset="utf-8"> head> <body> <form action="https://www.suntech.edu.vn/login.php"> <p>Username:   <input type="text" name="Username" size="15" maxlength="30" /> p> <p>Password:   <input type="Password" name="password" size="15" maxlength="30" /> p> form> body> html>

Kết quả:

Thuộc tính method trong đối tượng form có tác dụng gì ?

Radio button

Nếu bạn không muốn người dùng nhập mà muốn họ chọn một trong các phương án bạn đưa ra thì radio button là một lựa chọn hợp lí:

<html> <head> <title>Thẻ Form HTMLtitle> <meta charset="utf-8"> head> <body> <form action="https://www.suntech.edu.vn/login.php"> <p>: <br />   <input type="radio" name="color" value="rock" /> Rock   <input type="radio" name="color" value="pop" /> Pop   <input type="radio" name="color" value="jazz" /> Jazz p> form> body> html>

Kết quả:

Thuộc tính method trong đối tượng form có tác dụng gì ?

  • Nếu bạn muốn người dùng chọn 1 trong các lựa chọn bạn đưa ra thì thuộc tính name phải giống nhau.
  • Thuộc tính value cho biết giá trị được gửi đến máy chủ cho tùy chọn đã chọn. Giá trị của mỗi radio trong một nhóm phải khác nhau (để máy chủ biết người dùng đã chọn tùy chọn nào)

Checkbox

Radio button dùng để chọn chỉ một mục trong nhiều lựa chọn còn checkbox thì ngược lại, nó cho phép bạn có thể chọn 1 hoặc chọn tất cả các lựa chọn.

<html> <head> <title>Thẻ Form HTMLtitle> <meta charset="utf-8"> head> <body> <form action="https://www.suntech.edu.vn/login.php"> <p>Hãy chọn loại nhạc bạn thích nhất: <br />   <input type="checkbox" name="color" value="rock" /> Rock   <input type="checkbox" name="color" value="pop" /> Pop   <input type="checkbox" name="color" value="jazz"/> Jazz p> form> body> html>

Thuộc tính method trong đối tượng form có tác dụng gì ?

3. Thẻ textarea

Thẻ