js 用CreateElement动态创建标签 //*************************************//

来源:互联网 发布:oracle拷贝整个数据库 编辑:程序博客网 时间:2024/04/28 22:06


//定义方法创建一个label标签

//*************************************//

var createLabel = function(id, name, value) {

    var label_var = document.createElement("label");

 

    var label_id = document.createAttribute("id");

    label_id.nodeValue = id;

 

    var label_text = document.createTextNode(value);

 

    label_var.setAttributeNode(label_id);

    var label_css = document.createAttribute("class");

    label_css.nodeValue = "select_css";

    label_var.setAttributeNode(label_css);

    label_var.appendChild(label_text);

 

    return label_var;

}

 

 

//*************************************//

//定义方法创建input标签(主要为Text)

//id,name,value,type 分别代表创建标签的id,

//   名称(name),值(value),类型(type)

//  绑定Input方法事件,绑定方式如下(可以同时绑定多个事件方法):

//  "onchange==alert('This Value is change success !');|onblur==alert('This value is the beautiful one !');"

//*************************************//

var createInput = function(id, name, value, type, width, height, event) {

    var var_input = null;

    var input_event_attr_IE = "";

    if (event != null && event != "") {

        var event_array_IE = event.toString().split('|');

        for (var i = 0; i < event_array_IE.length; i++) {

            var event_IE = event_array_IE[i].split('==');

            input_event_attr_IE += " " + event_IE[0] + "='' ";

        }

    }

    try {//定义变量实现IE6.0和IE7.0兼容。

        var_input = document.createElement("<input " + input_event_attr_IE + ">");

    } catch (e) {

        var_input = document.createElement("input");

    }

 

    var input_id = document.createAttribute("id");

    input_id.nodeValue = id;

    var input_name = document.createAttribute("name");

    input_name.nodeValue = name;

    var input_type = document.createAttribute("type");

    input_type.nodeValue = type;

    var input_value = document.createAttribute("value");

    input_value.nodeValue = value;

    var input_style = document.createAttribute("style");

    var input_style_str = "";

 

    if (width != null && width != "") {

        input_style_str += "width:" + width + "px;";

    } else {

        input_style_str += "width:30px;";

    }

    if (height != null && height != "") {

        input_style_str += "height:" + height + "px;";

    }

 

    if (event != null && event != "") {

        var event_array = event.toString().split('|');

        for (var i = 0; i < event_array.length; i++) {

            var events = event_array[i].split('==');

            var input_event = document.createAttribute(events[0]);

            input_event.nodeValue = events[1];

            var_input.setAttributeNode(input_event);

        }

    }

 

    var_input.setAttributeNode(input_type);

    input_style.nodeValue = input_style_str;

    try {

        var_input.setAttributeNode(input_style);

    } catch (e) {

        width = (width == null || width == "") ? "30" : width;

        var_input.setAttribute("width", width);

        if (height != null && height != "") {

            var_input.setAttribute("height", height);

        }

    }

//    if (readonly != "") {

//        var input_readonly = document.createAttribute("readonly");

//        input_readonly.nodeValue = "readonly";

//        var_input.setAttributeNode(input_readonly);

//    }

 

    var_input.setAttributeNode(input_id);

    var_input.setAttributeNode(input_name);

    var_input.setAttributeNode(input_value);

 

    return var_input;

}

 

 

//******************************************************************//

//定义方法创建一个Select选择框的标签;

//*****   id   表示标签的标识id

//*****   name 表示标签的名称name

//*****   options表示标签要绑定的选择项(例如:"0231A563-专业类服务|02312177-维保类服务|……")

//*****   splitstr表示用来分割options的字符(如:'|')

//*****   splitchar表示分割键值对的分隔符(如:'-')

//*****   event 表示此标签对应的事件(当event==null时此标签不绑定事件)

//******************************************************************//

var createSelect = function(id, name, options, splitstr, splitchar, event, selectedValue) {

    var var_select = null;

    try {//处理IE6.0和IE7.0的兼容问题。

        var_select = document.createElement("<select onchange='' >");

    } catch (e) {

        var_select = document.createElement("select");

    }

 

    var select_id = document.createAttribute("id");

    select_id.nodeValue = id;

    var select_name = document.createAttribute("name");

    select_name.nodeValue = name;

 

    if (event != null && event != undefined && event != "") {

        var select_change = document.createAttribute("onchange");

        select_change.nodeValue = event;

        var_select.setAttributeNode(select_change);

    }

    var_select.setAttributeNode(select_id);

    var_select.setAttributeNode(select_name);

    try {

        var_select.setAttribute("width", "100px");

    } catch (e) {

        var select_css = document.createAttribute("class");

        select_css.nodeValue = "select_css";

        var_select.setAttributeNode(select_css);

    }

 

    splitstr = (splitstr == "" || splitstr == null) ? "|" : splitstr;

    splitchar = (splitchar == "" || splitchar == null) ? "-" : splitchar;

 

    if (options != null && options != undefined && options.toString() != "") {

        options = (options.toString().lastIndexOf(splitstr) + 1 == options.toString().length) ? options.toString().substr(0, options.toString().length - 1) : options;

        var arrayOption = options.toString().split(splitstr);

        for (var i = 0; i < arrayOption.length; i++) {

            var temp_value = arrayOption[i].split(splitchar);

            var option = document.createElement("option");

            var option_value = document.createAttribute("value");

            option_value.nodeValue = temp_value[0];

            var option_text = document.createTextNode(temp_value[1]);

            option.setAttributeNode(option_value);

            option.appendChild(option_text);

 

            var_select.appendChild(option);

            if (selectedValue != null && selectedValue != "") {

                if (temp_value[0] == selectedValue || temp_value[1] == selectedValue) {

                    var_select.options[i].selected = true;

                }

            }

        }

    }

    return var_select;

}

 

//***************************************************//

//定义方法创建一个<a>标签;

//*****   id表示标签唯一表示id

//*****   name表示标签的名称name

//*****   value表示标签对应显示的文字(名称)

//*****   event表示标签对应的事件(当event==null时事件不绑定)

//*****   href表示标签的链接属性

//***************************************************//

var createA = function(id, name, value, event, href, target) {

    var var_a = null;

    try {

        var_a = document.createElement("<a onclick='' target='_blank'>");  //这里创建必须为"<a onclick='alert()'>"这种形式来创建否者不支持IE6.0和IE7.0

    } catch (e) {

        var_a = document.createElement("a");

    }

    var a_id = document.createAttribute("id");

    a_id.nodeValue = id;

    var a_name = document.createAttribute("name");

    a_name.nodeValue = name;

    href = (href == null || href == "") ? ("javascript:void(0);" || "#") : href;

    var a_href = document.createAttribute("href");

    a_href.nodeValue = href;

 

    var a_Text = document.createTextNode(value);

 

    var_a.setAttributeNode(a_href);

    var_a.setAttributeNode(a_id);

    var_a.setAttributeNode(a_name);

    if (target != null) {

        var target_href = document.createAttribute("target");

        target_href.nodeValue = "_blank";

        var_a.setAttributeNode(target_href);

    }

 

    if (event != "" && event != null && event != undefined) {

        var a_click = document.createAttribute("onclick");

        a_click.nodeValue = event;

        var_a.setAttributeNode(a_click);

    }

    var_a.appendChild(a_Text); //注意这个值绑定顺序,只能放在最后去绑定(不然不支持IE6.0和IE7.0)

 

    return var_a;

}

 

 

//******************************************//

//定义方法判断输入值是否为数字;

//*******   当flag=true时判断输入值是否为整数;

//******************************************//

var check_Is_Num = function(obj, flag) {

    var flag_var = false;

    var num = /^\d+$/; ///^\+?[1-9][0-9]*$/;

    //flag_var = /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/.test(obj);

    flag_var = /^\d+(\.\d+)?$/.test(obj);

    if (flag) {

        flag_var = num.test(obj);

    }

    return flag_var;

}

 

//定义方法删除节点。

var removeRowItem = function(obj) {

    var rowTr = obj.parentNode.parentNode;

    try {

        rowTr.removeNode(true);

    } catch (e) {

        rowTr.parentNode.removeChild(rowTr);

    }

}

 

String.prototype.Trim = function() {

    return this.replace(/(^\s*)|(\s*$)/g, "");

}

原创粉丝点击