﻿//MethodName: 方法名 包括文件名带后缀带路径（绝对路径）
//Parameters: 参数
//SuccessCallBack: 异步成功时的回调，带参数
//ErrorCallBack: 异步失败时回调，带参数
function CallWebService(MethodName, Parameters, SuccessCallBack, ErrorCallBack) {
    var strParameter = _ParametersObjToString(Parameters);

    if (!jQuery.isFunction(SuccessCallBack)) SuccessCallBack = function() { };
    if (!jQuery.isFunction(ErrorCallBack)) ErrorCallBack = function() { };

    $.ajax({
        url: MethodName,
        type: 'POST',
        contentType: 'application/json',
        data: strParameter,
        dataType: 'json',
        success: SuccessCallBack,
        error: ErrorCallBack
    });
}

function _ParametersObjToString(Parameters) {
    var retString = "{";
    for (var key in Parameters) {
        if (retString.length > 1) retString += ",";
        retString += key.toString();
        retString += ":";
        retString += "'" + _JsonReplaceKeyWord(Parameters[key]) + "'";
    }
    retString += "}";
    return retString;
}

function _JsonReplaceKeyWord(textVal) {
    textVal = textVal.replace(/(^\s*)|(\s*$)/g, "");
    textVal = textVal.replace(/\\/g, "\\\\");
    textVal = textVal.replace(/\'/g, "\\'");
    textVal = textVal.replace(/\"/g, "\\\"");
    return textVal;
}

function JsonDateToString(jsonDate,formatString) {
    var dateint = parseInt(jsonDate.substring(6, 19));
    var javaDate = new Date(dateint);
    return javaDate.format(formatString);
}


