Jquery 插件

// 第一种 jQuery.extend
//对jQuery类级别的的扩展。可以引入后可以直接用$.xxx()使用
jQuery.extend({
    /**
     * 以JSON方式提交数据到服务端
     * @param url        必需。规定把请求发送到哪个 URL。
     * @param data        必需。映射或字符串值。规定连同请求发送到服务器的数据。
     * @param success    可选。请求成功时执行的回调函数。
     * @param dataType    可选。规定预期的服务器响应的数据类型。默认执行智能判断(xml、json、script 或 html)。
     */
    postJSON:function(url, data, success, dataType) {
        if (!dataType) {
            dataType = 'json';
        }
        $.ajax({
            type: "post",
            url: url,
            async: true,
            data: JSON.stringify(data),
            contentType: "application/json; charset=utf-8",
            dataType: dataType,
            success: function(rs) {
                success(rs);
            }
        }); 
    }
});
//js调用  $.postJSON();
/*
* 第二种
 * 对jQuery对象的扩展。引入后可以按照如下方式使用:$(this).id();
 */
$.fn.extend({
    id : function() {
        return $(this).attr("id");
    },
    eachVal : function(attr) {
        var values = "";
        var isVal = !attr || "val" == attr || "value" == attr;
        $(this).each(function(){
            values += (isVal  ? $(this).val() : $(this).attr(attr)) + ",";
        });
        if (values.length > 0) {
            values = values.substring(0, values.length -1);
        }
        return values;
    }
});
Date.prototype.format = function(fmt) {
    var o = {
        "M+" : this.getMonth() + 1, // 月份
        "d+" : this.getDate(), // 日
        "h+" : this.getHours(), // 小时
        "m+" : this.getMinutes(), // 分
        "s+" : this.getSeconds(), // 秒
        "q+" : Math.floor((this.getMonth() + 3) / 3), // 季度
        "S" : this.getMilliseconds() // 毫秒
    };
    if (/(y+)/.test(fmt))
        fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for ( var k in o)
        if (new RegExp("(" + k + ")").test(fmt))
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
};
//使用方法
var now = new Date();
var nowStr = now.format("yyyy-MM-dd hh:mm:ss");
//使用方法2:
var testDate = new Date();
var testStr = testDate.format("YYYY年MM月dd日hh小时mm分ss秒");
alert(testStr);
//示例:
alert(new Date().format("yyyy年MM月dd日"));
alert(new Date().format("MM/dd/yyyy"));
alert(new Date().format("yyyyMMdd"));
alert(new Date().format("yyyy-MM-dd hh:mm:ss"));

// 第三种 调用 $("").checkEmail()
$.fn.checkEmail = function(){
   var value = $(this).val();
   //对电子邮件的验证
  // var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
   var myreg = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
   if(value!="") {
     if(!myreg.test(value)) {
        //$(this)[0].focus();
        return false;
     }
    }
       return true;
};

// 第四种
var valid = function () {
    this.isMobile = function (str) {
        if(!(/^[1][3,4,5,7,8]\d{9}$/.test(str))){
            return false;
        }
        return true;
    };
};
// 调用
var toolVa = new valid();
tollVa.isMobile();

 

posted on 2019-06-26 17:47  钉子His  阅读(235)  评论(0编辑  收藏  举报

导航