/**
 * obj  : url or json data
 * data : json data
 */
my.submitWithJson = function(obj, data, target, method) {
    try {
        var param = null;       
        // json object이라면
        if ( obj && Object.prototype.toString.call(obj) === '[object Object]' ) {
            param = {
                 'url'     : obj.url                 || ''
                ,'data'    : obj.data                || {}
                ,'target'  : obj.target              || '_self'
                ,'method'  : obj.method              || 'POST'
            };
        }
        else {
            param = {
                 'url'     : obj                     || ''
                ,'data'    : data                    || {}
                ,'target'  : target                  || '_self'
                ,'method'  : method                  || 'POST'
            }; 
        }
         
        //랜덤한 수를 출력
        var curDate   = new Date();
        var ranNumber = Math.floor(Math.random() * 10000) + 1;
        var strId = "";
            strId += param.target;
            strId += "_";           
            strId += curDate.getFullYear();
            strId += curDate.getMonth();
            strId += curDate.getDay();
            strId += curDate.getHours();
            strId += curDate.getMinutes();
            strId += curDate.getSeconds();
            strId += "_" + ranNumber;
             
        var $newForm = jQuery("<form></form>")
                        .attr("name"  , strId)
                        .attr("id"    , strId)
                        .attr("method", param.method);
        if ( $newForm ) {
            if ( Object.prototype.toString.call(param.data) === "[object Array]") {
                jQuery.each(param.data, function(index, val) {
                    var row = val;
                    jQuery.each(row, function(key, val) { 
                        jQuery("<input type='"hidden"'>")
                            .attr("name" , key)
                            .attr("value", val)
                            .appendTo($newForm);
                    });
                });
                $newForm.appendTo(document.body);
            }
            else {
                jQuery.each(param.data, function(key, val) { 
                    jQuery("<input type='"hidden"'>")
                        .attr("name" , key)
                        .attr("id"   , key)
                        .attr("value", val)
                        .appendTo($newForm);
                });
                $newForm.appendTo(document.body);               
            }
     
            var myForm = $newForm[0];
            myForm.action = param.url;
            myForm.method = param.method;
            myForm.target = param.target;
             
            myForm.submit();
            $newForm.remove();
        }//if ( $popForm ) {
    }
    catch (e) {alert(e.message);}
    finally   {}
}; 


posted by 뚱2