RELATEED CONSULTING
相關咨詢
選擇下列産品馬上(shàng)在線溝通(tōng)
服務時(shí)間(jiān):9:00-18:00
你(nǐ)可(kě)能遇到了下面的問題
關閉右側工具欄
可(kě)編輯的表格(續集):jQuery實現對所編輯內(nèi)容的驗證
  • 作(zuò)者:admin
  • 發表時(shí)間(jiān):2013-07-02 14:17:24
  • 來(lái)源:未知

之前我寫了一篇關于用jQuery+PHP實現實時(shí)編輯表格字段內(nèi)容文章,通(tōng)過實例一步步講解了實現過程,但(dàn)是還(hái)有(yǒu)一個(gè)問題,就是如何驗證重新編輯的字段內(nèi)容的有(yǒu)效性,如郵箱地址是否符合規範等。本文将對此問題做(zuò)出解答(dá)。

讀過本站(zhàn)可(kě)編輯的表格:jQuery+PHP實現實時(shí)編輯表格字段內(nèi)容一文的朋友(yǒu)應該知道(dào)jeditable提供了select,textarea類型的編輯,并提供第三方插件api接口。我在該文中也講解了如何接入jquery ui的datepicker日曆插件。那(nà)麽今天我們也以接口接入的方式,以驗證郵箱和(hé)手機号碼為(wèi)例,講解使用過程。

接口接入的代碼先要指定接入類型,如datepicker,email,mobile等,當然類型的名稱可(kě)以自己取。先看接入驗證郵箱的代碼:

//驗證E-mail
$.editable.addInputType("email", {
    element : function(settings, original) {
        var input = $("");
        $(this).append(input);
        return(input);
    },
    submit: function (settings, original) {
		var value = $("input").val();
		if(value==""){
			$(this).append("
不能為(wèi)空(kōng)!").css("color","red");
			return false;
		}
        var preg = /^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/;
        if (!preg.test(value)) {
			$(this).append("
請(qǐng)輸入正确的email地址!").css("color","red");
            return false;
        }
    }
});

我們先指定需要驗證的元素element為(wèi)一個(gè)輸入框input,然後在輸入完內(nèi)容提交時(shí)的submit裏進行(xíng)驗證,先驗證不能為(wèi)空(kōng),然後對輸入的email進行(xíng)正則比對,如果輸入的格式不符合郵箱的格式則輸出錯誤提示信息。

調用驗證的方法隻需指定類型:type為(wèi)email即可(kě),如:

$(".edit_email").editable("save.php", { 
	type : "email",
});

這樣就完成了對email的驗證。同理(lǐ),對手機号碼的驗證采用同樣的代碼格式:

//驗證手機号碼
$.editable.addInputType("mobile", {
    element : function(settings, original) {
        var input = $("");
        $(this).append(input);
        return(input);
    },
    submit: function (settings, original) {
		var value = $("input").val();
		if(value==""){
			$(this).append("
不能為(wèi)空(kōng)!").css("color","red");
			return false;
		}
        var preg = /^(((13[0-9]{1})|(15[0-9]{1}))+d{8})$/;
        if (!preg.test(value)) {
			$(this).append("
請(qǐng)輸入正确的手機号碼!").css("color","red");
            return false;
        }
    }
});

不難看出,隻需改變驗證類型和(hé)驗證的正則表達式,就可(kě)以完成對相應的輸入字段的驗證。如此,我們可(kě)以依葫蘆畫(huà)瓢,舉一反三,實現對URL、身份證号碼、郵政編碼等等的驗證。好了,現在可(kě)以查看演示DEMO,看看效果吧(ba)。