09/10/2018, 23:53
Hủy bỏ submit bằng javascript
Chào các bạn ! Mình đang viết một ứng dụng web. có một usecase là khi mình submit form chẳng hạn như login, nhưng sau đó hủy bỏ submit. Vậy trong javascript là như thế nào mong các bạn giúp. thanks !
Bài liên quan
Thân
Đây là form:
...
<input type="button" value="Submit" onclick="check()">
</form>
if (điều kiệu gì đó) {
document.example.submit();
}
}
Thường người ta viết thế này nè
Các bạn quên 1 từ khóa rất quan trọng đó là return ở cả 2 cách sau khi phát hiện dữ liệu không hợp lệ sẽ hiện lên thông báo rồi .. gửi dữ liệu đó đi luôn
Bạn chỉ cần thêm vào
onclick="return check();"
onSubmit="return check();"
còn cách của ngappppp thì hàm check() kiểm tra xong nếu hợp lệ thì submit.
Mỗi người một vẻ. Cách nào cũng có lý của nó.
cái chức năng "chỉ cần nhấn Enter thì form submit" ở đây không quan trọng lắm vì người mở topic muốn kiểm tra cái gì đó trước khi submit hoặc không submit mà.
Cách của ngappppp thì onclick="check()" cũng đồng nghĩa với onclick="return check()".
Cách của boygiandi mới thực sự cần dùng return. Bởi vì cách của boygiandi thì cái button chính là submit, còn cách của ngappppp thì cái button thì chỉ là 1 cái nút gọi function thôi.
Thân
p/s : Nguyên nhân là khi gọi hàm check nó trả về 1 biến boolean có giá trị là false và biến đó không có nghĩ gì trong quá trình submit hết chỉ có lời gọi return false (return check()) mới có nghĩa bảo quá trình submit dừng lại!
Cách của boygiandi dùng <input type="submit" value="Submit"> thì nhấp vào nó sẽ gửi đi luôn, kiểm tra thế nào nó cũng gửi. Tức là điều kiện đúng sai gì nó cũng gửi hết (mình thử không dùng return).
Còn cách của ngappppp thì chỉ kiểm tra điều kiện đúng nó mới gửi. Tức là nếu điều kiện không đúng thì nó không gửi.