1. 程式人生 > >Ajax請求與表單提交的區別

Ajax請求與表單提交的區別

Form表單提交

<form action="ajaxTest.json" method="post">
    <input type="text" name="username">
    <input type="password" name="password">
</form>

action指明要提交到的url,method為提交方法,為post或是get。如果方法為get,表單提交的資料會被寫在請求頭的URL裡(請求頭裡沒有Content-type欄位);如果方法為post,資料會被儲存在請求體裡,請求頭的Content-type欄位的值是application/x-www-form-urlencoded。表單每次提交都會導致頁面重新整理。點選會提交表單內容的,有三個標籤:
<input type="submit"/>


<button type="submit"></button>
<input type="image">

Ajax請求

<html>
<head></head>
<body>
<script>
function createXHR() {
    if(typeof XMLHttpRequest != 'undefined') {
        return new XMLHttpRequest();
    } else if(typeof ActiveXObject != 'undefined'
) { if(typeof arguments.callee.activeXString != "string") { var versions = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp"], i, len; for(i = 0, len = versions.length; i < len; i++) { try { new ActiveXObject(versions[i]); arguments
.callee.activeXString = versions[i]; break; } catch (ex) { //跳過 } } return new ActiveXObject(arguments.callee.activeXString); } } else { throw new Error("No XHR object available."); } } var xhr = createXHR(); var data = "username=Mary&password=123"; xhr.open("GET", "ajaxTest.json", true); xhr.setRequestHeader("Content-type", "application/x-www.form-urlencoded"); xhr.send(data);
</script> </body> </html>

Ajax請求不會導致整個頁面重新整理,只會使區域性重新整理。使用Ajax必需要注意:資料必須是用&連線的鍵值對,並且在open()和send()之間必須要加xhr.setRequestHeader("Content-type", "application/x-www.form-urlencoded");這樣才能確保後臺可以通過request.getParameter("鍵名")來獲取資料。

相關推薦

Ajax請求提交區別

Form表單提交 <form action="ajaxTest.json" method="post"> <input type="text" name="username"> <input type="pas

轉載:關於ajax,form提交,http請求提交區別

https://www.cnblogs.com/lidgblogs/archive/2017/09/01/7403828.htmlajax模仿form上傳:<!doctype html> <html lang="en"> <head>

Extjs6關於Ajax和form提交以及store請求session超時的處理方法

對於Store的處理 每個store配置的時候,配上load監聽,載入時處理: usrStore : { model : 'App.model.Usr', autoLoad :

Payloadform提交區別

最近做專案的時候,在通過post請求向服務端傳送資料的時候,請求失敗了。錯誤資訊如下:返回的400(bad request)錯誤,說明客戶端這邊傳送的請求是有問題的。和通過jquery中的ajax方法傳送的請求作對比。發現問題出在了請求的主體部分。這裡的請求主體部分是payload的形式的。 而直接通過jq,

關於ajax進行form提交進行非同步上傳裡面帶有檔案上傳的問題

<!DOCTYPE html> <html> <head>     <meta charset="utf-8">     <title></title>  &

Ajax模仿form提交 以及jquery的param()方法

param() 方法用於在內部將元素值轉換為序列化的字串表示。請參閱 .serialize() 瞭解更多資訊。 對於 jQuery 1.3,如果傳遞的引數是一個函式,那麼用 .param() 會得到這個函式的返回值,而不是把這個函式作為一個字串來返回。 對於 jQuery 1.4,.param() 方

java post請求提交和json提交簡單小結

在java實現http請求時有分為多種引數的傳遞方式,以下給出通過form表單提交和json提交的引數傳遞方式: 1 public String POST_FORM(String url, Map<String,String> map,String encoding) throws Pa

Ajax獲取form提交資料

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta

AJAX和form提交的中文轉碼問題全面解決,encoderURL兩次轉碼的真相

{ if (window.XMLHttpRequest) {     myRequest =new XMLHttpRequest(); // Standards-compliant browsers }elseif (window.ActiveXObject) {     myRequest =new Act

spring mvc ajax請求form轉換成json

在使用jquery傳送ajax請求的時候,通過jquery的serialize()方法對錶單進行處理髮送到服務端是比較方便的。有一種場景是,欄位大部分在form表單下,個別欄位需要組裝,如果需要組裝的欄位比較簡單,可以使用serializeArray()將form序列化成ar

form提交ajax提交區別

原文地址:https://blog.csdn.net/yao302789/article/details/50954902 Ajax提交是通過js來提交請求,請求與響應均由js引擎來處理,頁面不會重新整理,用 戶感覺不到實際上瀏覽器發出了請求。比如說我們希望網頁總是顯示最新的新聞, 而又不想老是

Ajax提交傳統提交區別說明

Ajax提交是通過js來提交請求,請求與響應均由js引擎來處理,頁面不會重新整理,使用者感覺不到實際上瀏覽器發出了請求。比如說我們希望網頁總是顯示最新的新聞,而又不想老是去點重新整理按鈕,我們就可以用Ajax機制來實現。網上的客服軟體也是ajax請求的一個比較好的案例。傳統的請求頁面將實現重新整理,因此侷限性

關於form提交ajax提交區別

 1.    為什麼用AJAX?    使用AJAX,使用者對Web的體驗會更“敏捷”:資料提交頁面不會閃屏;頁面區域性    更新速度快;網路頻寬佔用低。  2.    AJAX開發相較傳統模式的簡單之處:    傳統模式下,表單提交則整個頁面重繪,為了維持頁面使用者對錶單的狀態改     變,要多些不少

Ajax提交傳統Form提交區別說明

Ajax提交是通過js來提交請求,請求與響應均由js引擎來處理,頁面不會重新整理,使用者感覺不到實際上瀏覽器發出了請求。比如說我們希望網頁總是顯示最新的新聞,而又不想老是去點重新整理按鈕,我們就可以用Ajax機制來實現。網上的客服軟體也是ajax請求的一個比較好的案例。傳

form提交 ajax提交區別

1、使用場景: 安全性都一樣,都是傳送的http協議。安全性與提交檔案的業務處理(格式檢測,防注入)有關,與提交方式無關。 一般登入用表單提交,點選提交觸發submit事件,一般會 使頁面發生跳轉,頁面的跳轉等行為的控制往往在後端,後端控制頁面的跳轉及資料的傳遞

AJAX實現圖片上傳和預覽(傳統ajaxjQuery AJAX;帶圖片的提交

  一、通過Servlet3.0和傳統的AJAX實現圖片上傳和預覽          此方法也適用於帶圖片的表單提交         上傳時預覽圖片    

jquery在提交之前,給submit按鈕繫結ajax請求需要注意的細節

場景: 一般情況下,我們在一個form表單中新增很多資訊,在submit提交操作之前,我們有可能需要驗證一些必要的資訊,比如說:提交前,我們需要驗證當前註冊的賬戶名稱是否已經在資料庫中存在的情況,這個時候就需要在submit按鈕提交前繫結一個ajax非同步的click事件。

虛擬提交模擬ajax請求

前端開發人員經常會遇到ajax請求出現跨域問題,比如做單點登入。結合本人開發經驗推薦一方法——虛擬表單提交,解決此類問題。此方法的特點是簡單易懂!好了,直接上乾貨! function formCommit(){ var formobj; // window.top.open(

Vue form 提交+ajax非同步請求+分頁

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="wi

Thymeleaf的普通提交AJAX提交

為Java實體物件新增後臺校驗註解: //String型別的校驗: @NotEmpty -- 不能為空 max=16 -- 最大長度為16 @NotEmpty(message = "songName不能為空") @Size(ma