[英]jquery load vs ajax for form post submission
如果我想做的就是將表單與POST數據一起提交給PHP處理器並獲取結果,是否有理由在jQuery load方法上使用ajax方法?
使用Ajax需要一堆代碼,而不是像這樣在jQuery中一行非常簡單的代碼:
$("#myDIV").load("myProcessor.php", {field1: target.value});
嗯,也許這只適用於一個領域? 抱歉,剛回到JS。
對於簡單的ajax調用,.load是合適的。 如果要處理特殊參數,請使用.ajax
。
PS:如果您不需要像jQuery這樣的胖框架,請看這里: http : //microjs.com/#ajax
從jQuery網站了解負載
此方法是從服務器獲取數據的最簡單方法。 它與$ .get(url,data,success)大致等效,除了它是方法而不是全局函數,並且具有隱式回調函數。 當檢測到成功的響應時(即,當textStatus為“成功”或“未修改”時),. load()將匹配元素的HTML內容設置為返回的數據。
您可以閱讀StackOverflow上的加載ajax之間的區別 。
但是, load
不是用於使用post
方法提交表單。 POST
和GET
都是不同的方法,並且工作方式不同,使用GET
方法提交的數據將在$_GET
數組中可用,但在$_POST
不可用。
$(element).load(...)
會自動將服務器響應作為html插入到所選元素中( .load()的jQuery文檔 )。 這可能會導致服務器將與請求有關的信息直接向用戶公開,這可能不是您要執行的操作。
$.ajax()
也可以很好地控制請求期間發生的情況。 您可以准確地攔截異常,並在請求成功完成時產生回調。 這些都是在$(element).load(...)
上使用$.ajax()
所有原因。 但是,如果您唯一關心的是在POST頭中發送數據並使用響應,則將$.post
與回調函數一起使用可能是最簡單的方法。 http://api.jquery.com/jQuery.post/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.