Example 1: innerHTML

DOM table methods using innerHTML to fill in cells

function addRowInnerHTML(tblId)
{
  var tblBody = document.getElementById(tblId).tBodies[0];
  var newRow = tblBody.insertRow(-1);
  var newCell0 = newRow.insertCell(0);
  newCell0.innerHTML = '';
  var newCell1 = newRow.insertCell(1);
  newCell1.innerHTML = 'cell 1 - just plain text';
}

Example 2: DOM

DOM table methods using DOM to fill in cells

function addRowDOM(tblId)
{
  var tblBody = document.getElementById(tblId).tBodies[0];
  var newRow = tblBody.insertRow(-1);
  var newCell0 = newRow.insertCell(0);
  var newInput = document.createElement('input');
  newInput.type = 'text';
  newInput.value = 'cell 0 - text box';
  newInput.style.color = 'blue';
  newCell0.appendChild(newInput);
  var newCell1 = newRow.insertCell(1);
  newCell1.appendChild(document.createTextNode('cell 1 - just plain text'));
}

Example 3: DOM Clone

cloneNode to clone an existing row

function addRowClone(tblId)
{
  var tblBody = document.getElementById(tblId).tBodies[0];
  var newNode = tblBody.rows[0].cloneNode(true);
  tblBody.appendChild(newNode);
}

// ----------------------------------
// Map 정의
// ----------------------------------
var Map = function () {
    this._array = new Array(); // Map배열
    this.pointer = 0;

    this._getIndexByKey = function (key) {
        for (var i = 0; i < this._array.length; i++) {
            if (key == this._array[i][0]) {
                return i;
            }
        }
        return -1;
    }

    this.put = function (key, value) {
        var index = this._getIndexByKey(key)

        if (index == -1) {
            var newArray = new Array(); // key와value를 담는 배열
            newArray[0] = key;
            newArray[1] = value;
            this._array[this._array.length] = newArray;
        } else {
            this._array[index][1] = value;
        }
    }

    this.get = function (key) {

        for (var i = 0; i < this._array.length; i++) {
            if (this._array[i][0] == key)
                return this._array[i][1];
        }

    }

    this.isNext = function () {
        var result;
        if (this._array.length > this.pointer) {
            result = true;
        } else {
            result = false;
        }
        this.pointer++;
        return result;
    }

    this.size = function () {
        return this._array.length;
    }

    this.nowKey = function () {
        return this._array[this.pointer - 1][0];
    }
    this.nowValue = function () {
        return this._array[this.pointer - 1][1];
    }
}


 /*==============================================================================
Function : javaScript Map
Return   :
examples :
: get(key), getKey(value), put(key, value), size(), remove(key),
clear(), keys(), values(), containsKey(key), containsValue(value),
isEmpty(), putAll(map), toString(separator)
==============================================================================*/
function Map(Delimitor) {
    this.Delimitor = (Delimitor == null ? "||" : Delimitor);
    this._MapClass = new ActiveXObject("Scripting.Dictionary");

    this.get = function (key) { return this._MapClass.exists(key) ? this._MapClass.item(key) : null; }
    this.getKey = function (value) {
        var keys = this.keys();
        var values = this.values();
        for (var i in values) {
            if (value == values[i]) return keys[i];
        }
        return "";
    }
    this.put = function (key, value) {
        var oldValue = this._MapClass.item(key);
        this._MapClass.item(key) = value;
        return value;
    }
    this.size = function () { return this._MapClass.count; }
    this.remove = function (key) {
        var value = this._MapClass.item(key);
        this._MapClass.remove(key);
        return value;
    }
    this.clear = function () {
        this._MapClass.removeAll();
    }
    this.keys = function () {
        return this._MapClass.keys().toArray();
    }
    this.values = function () {
        return this._MapClass.items().toArray();
    }
    this.containsKey = function (key) {
        return this._MapClass.exists(key);
    }
    this.containsValue = function (value) {
        var values = this.values();
        for (var i in values) {
            if (value == values[i]) {
                return true;
            }
        }
        return false;
    }
    this.isEmpty = function () { return this.size() <= 0; }
    this.putAll = function (map) {
        if (!(map instanceof Map)) {
            throw new Error(0, "Map.putAll(Map) method are required Map type parameter.");
        }
        var keys = map.keys();
        for (var i in keys) {
            this.put(keys[i], map.get(keys[i]));
        }
        return this;
    }

    this.toString = function (separator) {
        var keys = this.keys();
        var result = "";
        separator = separator == null ? "&" : separator;
        for (var i in keys) {
            result += (keys[i] + this.Delimitor + this._MapClass.item(keys[i]));
            if (i < this.size() - 1) {
                result += separator;
            }
        }
        return result;
    }
}


샘플 코드1.
function Set_Comma(n) {
     if (n.indexOf('.') >=0) {
        return Number(  String(  n.split('.')[0]    ).replace(/\..*|[^\d]/g,"")).toLocaleString().slice(0,-3)  + '.' + String(n.split('.')[1]);
     }
     else {
         return Number(String(n).replace(/\..*|[^\d]/g,"")).toLocaleString().slice(0,-3);
     }
}

샘플 코드2.
function addComma(n) {
        var reg = /(^[+-]?\d+)(\d{3})/;
        n += '';

        while (reg.test(n)) {
            n = n.replace(reg, '$1' + ',' + '$2');
        }
    return n;
}


'Web Platform' 카테고리의 다른 글

HTML Table Add Row - innerHTML vs. DOM vs. cloneNode  (1) 2010.08.02
javascript Map 구현  (0) 2010.06.28
jQuery Calendar  (0) 2010.06.28
jQuery ajaxSubmit 간단 예제  (0) 2010.06.28
jQuery에서 체크 박스 전체 선택 or 전제 해제  (0) 2010.06.28

+ Recent posts