Điểm cuối này được sử dụng để gửi dữ liệu gửi biểu mẫu tới HubSpot. Gửi biểu mẫu từ các nguồn bên ngoài có thể được gửi đến bất kỳ biểu mẫu HubSpot thông thường nào. Bạn có thể tìm thấy danh sách các biểu mẫu trong tài khoản của mình bằng cách điều hướng đến Tiếp thị > Thu hút khách hàng tiềm năng > Biểu mẫu
Để theo dõi chính xác các lần gửi từ biểu mẫu bên ngoài của bạn, chúng tôi khuyên bạn nên tạo biểu mẫu mới trong HubSpot để song song với biểu mẫu trang web tùy chỉnh của bạn
Nếu đang tìm kiếm điểm cuối
//get the form from DOM [Document object model]
var form = document.getElementById['login-form'];
form.onsubmit = function[event]{
var xhr = new XMLHttpRequest[];
var data = new FormData[form];
//Add extra data to form before submission.
data.append["referer","//example.com"];
//open the request
xhr.open['POST','//localhost:7000/tests/v1.0/form']
//send the form data
xhr.send[data];
xhr.onreadystatechange = function[] {
if [xhr.readyState == XMLHttpRequest.DONE] {
form.reset[]; //reset form after AJAX success.
}
}
//Dont submit the form.
return false;
}
0 kế thừa, bạn có thể tìm thông tin chi tiết về điểm cuối đó tại đâyTrước khi bạn bắt đầu
Xin lưu ý những điều sau đây
- Điểm cuối này có giới hạn tốc độ là 50 yêu cầu mỗi 10 giây
- Khi sử dụng điểm cuối này để tích hợp các biểu mẫu tùy chỉnh với HubSpot, hãy nhớ rằng các điểm cuối khả dụng không ghi lại bất kỳ lệnh gọi API nào. Người dùng sẽ cần lưu trữ nhật ký của riêng họ.
- Ngoài việc chấp nhận các yêu cầu HTTP phía máy chủ, điểm cuối này sẽ chấp nhận các yêu cầu AJAX [CORS] có nguồn gốc chéo, cho phép bạn gửi trực tiếp dữ liệu biểu mẫu tới phía máy khách HubSpot bằng JavaScript
- Các trường trong biểu mẫu phải tương ứng với các thuộc tính liên hệ hiện có trong tài khoản HubSpot của bạn. Tìm hiểu thêm về cách tạo thuộc tính liên hệ mới. Bạn cũng có thể xem tài liệu API Danh bạ và API Thuộc tính danh bạ để biết thêm chi tiết
- Khi lùi ngày giá trị dấu thời gian SubmitAt của một lần gửi biểu mẫu, giá trị Nguồn gốc của người liên hệ có thể bị ảnh hưởng nếu lượt xem trang đầu tiên của người liên hệ sau giá trị dấu thời gian SubmitAt
- Điểm cuối này không hỗ trợ reCAPTCHA. Nếu reCAPTCHA đã được bật trên biểu mẫu, nội dung gửi sẽ không được chấp nhận.
Vì API này không được xác thực nên cần phải liệt kê trước các trường biểu mẫu đã gửi trong định nghĩa. Điều này có thể được cấu hình trong trình chỉnh sửa hoặc thông qua API. Không làm như vậy sẽ dẫn đến lỗi FIELD_NOT_IN_FORM_DEFINITION. Để giải quyết lỗi này, vui lòng thử cách sau.
Ví dụ sau minh họa một biểu mẫu HTML5 gửi dữ liệu qua lệnh gọi API Ajax bằng phương pháp
1. Cuộc gọi ajax sẽ được xử lý bởi tài nguyên REST được viết bằng xml//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
API biểu mẫu HTML5 cung cấp một số API javascript để tránh thao tác trực tiếp với các phần tử đầu vào riêng lẻ
Biểu mẫu HTML5 với đầu vào gửi
Khi người dùng cuối nhập dữ liệu vào biểu mẫu và nhấp vào nút gửi, dữ liệu biểu mẫu được gửi bằng phương thức HTTP POST, hàm onsubmit dữ liệu này sẽ bắt dữ liệu và với sự trợ giúp của yêu cầu
2 sẽ gửi dữ liệu đến URL tương ứng//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
UsernamePasswordNhững điều quan trọng cần ghi nhớ ở dạng HTML5
- Tất cả các phần tử
3 phải nằm trong thẻ//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
4//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
- Không cần thuộc tính hành động hoặc phương thức.
5 hoặc//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
0//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
- Tiếp tục gửi đầu vào ở dạng
1//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
Biểu mẫu có thể được trang trí bằng CSS và điều này không ảnh hưởng đến chức năng. API javascript sẽ không hoạt động nếu những thứ trên không được giữ ở dạng
Biểu mẫu Javascript Ajax Gửi
Tất cả các trường nhập bao gồm các trường ẩn sẽ được gửi trên máy chủ mà không cần thêm bất kỳ javascript nào. Điều này là nhờ API FormData
Truyền đối tượng biểu mẫu cho hàm tạo FormData để điền vào đối tượng biểu mẫu
Đối tượng FormData chứa tất cả các trường dưới dạng thuộc tính
2 của trường đầu vào//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
3, Sử dụng FormData. get[] API, mỗi giá trị biểu mẫu có thể được tìm nạp//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
Nếu các tham số bổ sung cần được gửi trong biểu mẫu, chúng có thể được thêm vào đối tượng FormData
Đừng quên dòng cuối cùng. Hàm onsubmit phải luôn trả về false, cho biết API Biểu mẫu HTML5 rằng biểu mẫu đó không được gửi
Gửi dữ liệu biểu mẫu ở định dạng json
Đối tượng FormData chứa các cặp khóa-giá trị, như chúng ta có thể thấy trong ví dụ trên. Chúng ta cần chuyển đổi các cặp khóa-giá trị này thành một đối tượng
đối tượng. Phương thức fromEntries[] chuyển đổi danh sách các cặp khóa-giá trị thành một đối tượng
xhr.setRequestHeader["Content-Type", "application/json;charset=UTF-8"]; var json = JSON.stringify[Object.fromEntries[formData]]; xhr.send[json];
Chúng tôi không thể trực tiếp gửi đối tượng qua mạng. Đối tượng cần được chuyển đổi thành chuỗi json và gửi bằng phương thức
2//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
Điều quan trọng là phải cho máy chủ biết, chúng tôi đang gửi dữ liệu ở định dạng json bằng tiêu đề
5//get the form from DOM [Document object model] var form = document.getElementById['login-form']; form.onsubmit = function[event]{ var xhr = new XMLHttpRequest[]; var data = new FormData[form]; //Add extra data to form before submission. data.append["referer","//example.com"]; //open the request xhr.open['POST','//localhost:7000/tests/v1.0/form'] //send the form data xhr.send[data]; xhr.onreadystatechange = function[] { if [xhr.readyState == XMLHttpRequest.DONE] { form.reset[]; //reset form after AJAX success. } } //Dont submit the form. return false; }
Xử lý AJAX Gửi phản hồi trong javascript
Sau khi gửi thao tác, chúng tôi có thể đợi phản hồi và đặt lại biểu mẫu sau khi nhận được phản hồi thành công. Chúng tôi có thể làm các hoạt động khác như
- Hiển thị thông báo thành công cho người dùng
- Chuyển hướng đến trang khác
- Xóa phần tử HTML5 khỏi trang
- Đặt lại biểu mẫu
Gửi biểu mẫu có tìm nạp
Tìm nạp là một API trình duyệt cho phép gửi các yêu cầu HTTP. Trong ví dụ dưới đây, chúng tôi đã thay thế XHR bằng tìm nạp
var form = document.querySelector['form']; form.onsubmit = function[event]{ var formData = new FormData[form]; fetch["/test.php", { body: formData, method: "post" }].then[]; //Dont submit the form. return false; }
Trên mạng
Định dạng dữ liệu biểu mẫu để gửi dữ liệu qua mạng đến máy chủ
Các tham số được gửi trong yêu cầu POST được nhận trên máy chủ. Các tham số trên máy chủ có thể được truy cập bằng cách sử dụng giá trị thuộc tính tên được cung cấp trong biểu mẫu
Làm cách nào để gửi yêu cầu POST từ JavaScript?
Làm cách nào để ĐĂNG yêu cầu bằng cách sử dụng XMLHttpRequest trong JavaScript? . create the object by calling new XMLHttpRequest[] and then use the open[] and send[] methods of XMLHttpRequest.Làm cách nào để gửi biểu mẫu trong JavaScript?
hình thức phương pháp. submit[] được sử dụng để tạo động và gửi thông tin chi tiết đến máy chủ. Việc gửi biểu mẫu JavaScript có thể được sử dụng để tạo đối tượng và các thuộc tính khác nhau cũng có thể được sử dụng. Các thuộc tính có thể là lớp, id, thẻ, v.v.Làm cách nào tôi có thể gửi dữ liệu biểu mẫu trong yêu cầu POST?
Để đăng dữ liệu biểu mẫu HTML lên máy chủ ở định dạng được mã hóa URL, bạn cần phải thực hiện yêu cầu HTTP POST tới máy chủ và cung cấp dữ liệu biểu mẫu HTML trong phần thân của . Bạn cũng cần chỉ định loại dữ liệu bằng cách sử dụng Content-Type. tiêu đề yêu cầu ứng dụng/x-www-form-urlencoded. . You also need to specify the data type using the Content-Type: application/x-www-form-urlencoded request header.Làm cách nào để nhận dữ liệu biểu mẫu đã gửi trong JavaScript?
Để 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ư getElementsByName[] , getElementById[] , querySelector[] , v.v. . Ngoài ra, bạn có thể sử dụng thuộc tính phần tử của đối tượng biểu mẫu. Hình thức. thuộc tính phần tử lưu trữ một tập hợp các phần tử biểu mẫu.- Tất cả các phần tử