1. 程式人生 > >jquery中append、prepend, before和after方法的區別(二)

jquery中append、prepend, before和after方法的區別(二)

1.append()與after()

這兩個都是在元素的後面插入內容,不同的是前者是在元素內部插入(作為該元素的子元素),後者是在元素外部插入(作為該元素的兄弟元素);但是這裡我要講的是,當用表單驗證中用到這兩個方法時的區別:append()比較正常;而after()則會沒獲取一次表單的焦點,after插入的內容就會增加一次,如下:

  $('form :input').blur(function(){  
         var $parent=$(this).parent();
         $parent.find(".formtips").remove();

//*********使用者名稱
        if( $(this).is('#name') ){
             if(this.value==""){
                  var errorMsg='請輸入您的姓名!';
                   $parent.after('<span class="formtips onError pull-right">'+errorMsg+'</span>');
              }else{
                   var okMsg='輸入正確!';
                    $parent.after
('<span class="formtips onSuccess pull-right">'+okMsg+'</span>'); } } //*****驗證電話號碼 if( $(this).is('#phone') ){ if( this.value=="" || ( this.value!="" && !/^1[3|4|5|8]\d{9}$/.test(this.value) ) ){ var errorMsg = '請輸入正確的號碼.'; $parent.after
('<span class="formtips onError pull-right">'+errorMsg+'</span>'); }else{ var okMsg = '輸入正確.'; $parent.after('<span class="formtips onSuccess pull-right">'+okMsg+'</span>'); } } //*****驗證郵件 if( $(this).is('#e_mail') ){ if( this.value=="" || ( this.value!="" && !/
[email protected]
+\.[a-zA-Z]{2,4}$/.test(this.value) ) ){ var errorMsg = '請輸入正確的E-Mail地址.'; $parent.after('<span class="formtips onError pull-right">'+errorMsg+'</span>'); }else{ var okMsg = '輸入正確.'; $parent.after('<span class="formtips onSuccess pull-right">'+okMsg+'</span>'); } } }).keyup(function(){ $(this).triggerHandler("blur"); }).focus(function(){ $(this).triggerHandler("blur"); }); $(".formT button:eq(0)").click(function(){ $("form :input").trigger('blur'); var numError = $('form .onError').length; if(numError){ return false; alert(numError); }else{ $.ajax({ scriptCharset: 'utf-8', type:'post', url:'http://www.******', dataType:'text', data:$('#form').serialize(), //data:{'name':name,'phone':phone,'e_mail':e_mail,'content':content}, async: false, success:function(result){ alert('我們會盡快與您聯絡,祝您生活愉快!'); }, error:function(result){ alert('網路異常,請稍後再試或聯絡客服!'); } }); } }) })
效果如下:


當把after() 換成append()時,效果如下:



相關推薦

jqueryappendprepend, beforeafter方法區別

mod serve com oos 兄弟節點 sha pos 插入 5% 原文:http://blog.csdn.net/woosido123/article/details/64439490 在 jquery中append() 與 prepend()是在元素內插

jqueryappendprepend, beforeafter方法區別

1.append()與after() 這兩個都是在元素的後面插入內容,不同的是前者是在元素內部插入(作為該元素的子元素),後者是在元素外部插入(作為該元素的兄弟元素);但是這裡我要講的是,當用表單驗證中用到這兩個方法時的區別:append()比較正常;而after()則會沒

Java常量定義在interfaceclass的區別

var tac 不能被繼承 ble -o err 模式 variable 個人愛好 最終結論:定義常量在interface和class中其實都行,關鍵是看你的設計和個人愛好。 Java中interface中定義變量默認都是"public static final"類型的,

CC++的區別

1、引用 引用就是個別名,記憶體單元的別名,底層以指標的方式來支援引用,在引用使用的地方,系統自帶解引用的過程。 int a = 10; int &b = a; a和b是同一個記憶體塊 引用的注意事項: 引用一定要初始化 引用引用的變數要能取地址 引用是

觸發器BEFOREAFTER區別及使用場景

DML操作的行級觸發器,分為before和after兩類。比如下面在同一張表上分別建了2個觸發器然後用一個insert語句進行觸發結果發現,這2類觸發器捕捉的:OLD和:NEW資料實際是一樣的。那麼什麼時候用before,什麼時候用after呢?我們先要知道這2種觸發器的特性

mysql之觸發器beforeafter區別

mysql 訂單 負數 values 完成 -1 class 大於 nbsp 我們先做個測試: 接上篇日誌建的商品表g和訂單表o和觸發器 假設:假設商品表有商品1,數量是10; 我們往訂單表插入一條記錄: insert into o(gid,much) value

Servlet的request對象重定向轉發的差別6

current https 命令 相對 eba 進入 file before redirect 1.這裏所說的request對象指的是HttpServletRequest對象,它代表client的請求,當client通過HTTP協議訪問server時。HTTP請求頭

Jquery的AjaxcontentTypedataType的區別轉載

上程式碼 $.ajax({ type: httpMethod, cache: false, contentType: "application/json; charset=utf-8", dataType: "json",//返回值型別 url: pa

Java的代碼點代碼單元

swing enter 錯誤 字體 消息 關系 小文本 開發人員 界面 文章來源:http://blog.csdn.net/weizhaozhe/article/details/3909079 這篇文章講的很細,但是對於初學者也很難理解,在後面的筆記中,我會陳述自己的簡單

Servletforwardredirect的區別

intern host 邏輯 overflow IT lan 實時性 解析 relative forward方式:request.getRequestDispatcher("/somePage.jsp").forwardrequest, response); red

C++ vectorlistdeque的區別 整理

style stl 內存大小 splice cnblogs 類定義 所有 編寫 重復 1.vector數據結構  vector和數組類似,擁有一段連續的內存空間,並且起始地址不變。因此能高效的進行隨機存取,時間復雜度為o(1);但因為內存空間是連續的,所以在進行插入和刪除操

SSM框架日誌的打印單例模式

targe ssi ffffff append SSM框架 核心 AS per 輸出 一、SSM框架中日誌輸出 1、src根目錄下配置log4j.properties文件 #設置輸出級別和輸出目的地# log4j.rootLogger=info, stdout,logfi

【演算法】叉樹前序後序遍歷相互求法

二叉樹前序、中序、後序遍歷相互求法 原文地址      今天來總結下二叉樹前序、中序、後序遍歷相互求法,即如果知道兩個的遍歷,如何求第三種遍歷方法,比較笨的方法是畫出來二叉樹,然後根據各種遍歷不同的特性來求,也可以程式設計求出,下面我們分別說明。  

javaIntegerint的區別

prev 指針 引用 .com 地址 區別 val details sdn int和Integer的區別 1、Integer是int的包裝類,int則是java的一種基本數據類型 2、Integer變量必須實例化後才能使用,而int變量不需要 3、Integer實際是對象

k8s的儲存卷-節點POD儲存資料

容器的儲存卷 Pod是自己有生命週期的 Pod消失後資料也會消失 所以我們要把資料放在一個容器的外面 docker儲存卷在k8s上只有一定的儲存性,因為k8s是排程的,Pod掛掉之後再啟動不會預設之前的資料位置 脫離節點的儲存裝置才可以解決持久能力 在K8s上Pod刪除,儲存卷也

ajax post 請求 get 請求的區別

get 請求 1、傳遞資料方式: 資料直接在post 的 url 中傳遞,直接拼接在 url ? 後面,多個數據用 & 符號拼接 xhr.open('get ‘, 2.get.php?username = Tom & age = 30&’)

HashTableHashSetDictionary的區別轉載

The 調用 測試 opera lock-free api 結構 通過 屬於 1.HashTable哈希表(HashTable)表示鍵/值對的集合。在.NET Framework中,Hashtable是System.Collections命名空間提供的一個容器,用於處理和表

StringStringBufferStringBuilder的區別理論

String、StringBuffer和StringBuilder的區別: 1.String不可變字串,賦值都會新建物件,除非字串池中已經存在,修改的不是值而是引用 2.StringBuffer和StringBulider字串 在原有的基礎上進行修改,當前操作的都是字串 3.S

3_深度學習顯示卡的使用現存的分配20181213

深度學習中顯示卡的使用和視訊記憶體的分配(20181213) 1、tensorflow 中顯示卡使用和視訊記憶體分配 1、顯示卡的使用,單顯示卡和多顯示卡使用 1、tensorflow禁用gpu: 2、視訊記憶體

BIONIOAIO的區別簡明版

      一:事件分離器         在IO讀寫時,把 IO請求 與 讀寫操作 分離調配進行,需要用到事件分離器。根據處理機制的不同,事件分離器又分為:同步的Reactor和非同步的Proactor。         Reactor模型: - 應用程式