
function functionWithConfirm(args) {
    ///<summary>带有确认取消的动作</summary>
    ///<param name="args" type="Object">参数对象</param>
    ///<param name="args.func" type="function">确认后执行的方法</param>
    ///<param name="args.funcArgs" type="function">确认后执行方法的参数</param>
    ///<param name="args.msg" type="function">自定义提示信息</param>
    if (!args) {
        return;
    }
    var msg = "确认吗？";
    if (args.msg) {
        msg = args.msg;
    }
    if (confirm(msg)) {
        if (typeof (args.func) == "function") {
            args.func(args.funcArgs);
        }
    }
}

function delWithConfirm(args) {
    ///<summary>带有确认取消的删除</summary>
    ///<param name="args" type="Object">参数对象</param>
    ///<param name="args.func" type="function">确认后执行的方法</param>
    ///<param name="args.funcArgs" type="function">确认后执行方法的参数</param>
    ///<param name="args.msg" type="function">自定义提示信息</param>
    var defaultArgs = {
        msg: "确认删除吗？"
    };
    var finalArgs = $.extend(true, defaultArgs, args);
    functionWithConfirm(finalArgs);
}

function setImgPreview(sourceId, targetId) {
    var fileInput = document.getElementById(sourceId);
    var fileName = fileInput.value;
    var fileNameLowerCase = fileName.toLowerCase();
    if (!fileNameLowerCase.match(/.jpg|.gif|.png|.bmp/i)) {
//        alert("您上传的图片格式不正确，请重新选择！");
        return;
    }

    // 根据这个 <input> 获取文件的 HTML5 js 对象
    var files = fileInput.files;
    if (files && files.length > 0) {
        // 获取目前上传的文件
        var file = files[0];
        // 获取 window 的 URL 工具
        var URL = window.URL || window.webkitURL;
        // 通过 file 生成目标 url
        var imgUrl = URL.createObjectURL(file);
        // 用这个URL将图片显示出来
        var targetImg = $("#" + targetId);
        targetImg.attr("src", imgUrl);
        // 使用下面这句可以在内存中释放对此 url 的伺服
        // URL.revokeObjectURL(imgURL);
    }
}

function isFileInputNull(fileInputId) {
    var fileInput = document.getElementById(fileInputId);
    var files = fileInput.files;
    if (!files || files.length == 0) {
        return true;
    }
    return false;
}

function checkFileInputImg(fileInputId) {
    var fileInput = document.getElementById(fileInputId);
    var fileName = fileInput.value;
    var fileNameLowerCase = fileName.toLowerCase();
    if (!fileNameLowerCase.match(/.jpg|.gif|.png|.bmp/i)) {
        return false;
    }
    return true;
}

function clearFileInput(fileInputId) {
    var obj = document.getElementById(fileInputId);
    obj.outerHTML = obj.outerHTML;
}

function getFileSize(fileInputId) {
    var fileInput = document.getElementById(fileInputId);
    var files = fileInput.files;
    if (!files || files.length == 0) {
        return 0;
    }
    return files[0].size;
}

function objDeepCopy(source) {
    var result={};
    for (var key in source) {
        result[key] = typeof source[key]==='object' ? deepCoyp(source[key]) : source[key];
    }
    return result;
}