superinput.java

来自「医院信息系统(Hospital Information System」· Java 代码 · 共 249 行

JAVA
249
字号
package hospital.View;

public class SuperInput {
    private static final String imageStar = "<img class='imageStar' name='star' />";
    private static final String dualStar = imageStar + imageStar;

    //一个完整的输入框HTML代码inputString由以下几部分顺序组成:
    //inputBody,inputStar,inputCode,inputTip
    private StringBuffer inputBody; //输入框HTML代码主体
    private String inputStar; //星状提示
    private String inputCode; //编码按钮
    private String inputTip; //文本框右侧的提示
    private StringBuffer inputString; //一个完整输入框的HTML代码

    //以下是该输入框的各种属性
    private String inputBeginTag;
    private String inputEndTag;
    private String inputClass;
    private String inputType;
    private String inputOnblur;
    private String inputID;
    private String inputName;
    private String inputValue;
    //A标签的专有属性若出现在B标签中,则在B标签显示的时候该属性被忽略,不起任何作用
    private String inputMaxLength; //这两个是input的专有属性
    private String inputSize; //这两个是input的专有属性
    private String inputCols; //这两个是textarea的专有属性
    private String inputRows; //这两个是textarea的专有属性
    private String inputIsKey;
    private String inputNotNullFlag;
    private String inputInputEnable;
    private String inputFieldType;
    private String inputCodeType;
    private String inputCodeCascade; //编码级联

    //以下是该输入框的其他一些限制条件
    private String modified;
    private String keyNames;

    public SuperInput() {
        inputBody = new StringBuffer(1000);
        inputStar = "";
        inputCode = "";
        inputTip = "";
        inputString = new StringBuffer(1200);

        inputBeginTag = "<input ";
        inputEndTag = "></input>";
        inputClass = "singleRow";
        inputType = "text";
        inputOnblur = "checkDataKind(this)";
        inputID = "";
        inputName = "";
        inputValue = "";
        inputMaxLength = "";
        inputSize = "";
        inputCols = ""; //这两个是textarea的专有属性
        inputRows = ""; //这两个是textarea的专有属性
        inputIsKey = "";
        inputNotNullFlag = "";
        inputInputEnable = "";
        inputFieldType = "";
        inputCodeType = "";
        inputCodeCascade = "";

        modified = "";
        keyNames = "";
    }

    //拼出只能作为显示信息用的一个文本区域
    private String makeUnmodifiedInput() {
        String str = inputValue;
        if (str.equals("")) {
            str = "&nbsp;";
        }
        inputBody.append("<div class='browseItem'>" + str + "</div>");
        return inputBody.toString();
    }

    //拼出具有修改功能的文本框
    private String makeModifiedInput() {
        //如果字段类型为password,则要将input的type从text改为password
        if (inputFieldType.equals("password") || inputFieldType.equals("repassword")) {
            inputType = "password";
        } else if (Integer.valueOf(inputMaxLength) > 60) { //如果字段的最大输入长度超过60,则要将输入文本框从单行的input转为多行的textarea
            inputBeginTag = "<textarea ";
            //注意,textarea的结束标签与input的结束标签不同,差一个“>”,因为
            //textarea的值要写在开始标签和结束标签之间,所以最后再补上“>”。
            inputEndTag = "</textarea>";
            inputCols = "60";
            inputRows = String.valueOf(Integer.valueOf(inputMaxLength) / Integer.valueOf(inputCols));
        }

        //拼合输入文本域的各种属性
        inputBody.append(inputBeginTag);
        inputBody.append("class='" + inputClass + "' ");
        inputBody.append("type='" + inputType + "' ");
        inputBody.append("onblur='" + inputOnblur + "' ");
        inputBody.append("id='" + inputID + "' ");
        inputBody.append("name='" + inputName + "' ");
        inputBody.append("maxLength='" + inputMaxLength + "' ");
        inputBody.append("size='" + inputSize + "' ");
        inputBody.append("cols='" + inputCols + "' ");
        inputBody.append("rows='" + inputRows + "' ");
        inputBody.append("isKey='" + inputIsKey + "' ");
        inputBody.append("notNullFlag='" + inputNotNullFlag + "' ");
        inputBody.append("inputEnable='" + inputInputEnable + "' ");
        inputBody.append("fieldType='" + inputFieldType + "' ");
        inputBody.append("codeType='" + inputCodeType + "' ");

        if (Integer.valueOf(inputMaxLength) > 60) {
            inputBody.append(">" + inputValue);
            inputBody.append(inputEndTag);
        } else {
            inputBody.append("value='" + inputValue + "' ");
            inputBody.append(inputEndTag);
        }
        //如果字段类型为auto,则拼上相应提示,并拼上结束标志
        if (inputFieldType.equals("auto")) {
            inputTip = "<span class='autoInput'>保存后自动生成</span>";
        }
        //如果该项不能为空,则拼一个星星
        if (inputNotNullFlag.equals("1")) {
            inputStar = imageStar;
        }
        //如果该项关键字,需要拼两个星星,并指出该项为关键字
        if (inputIsKey.equals("1")) {
            inputStar = dualStar;
            keyNames = inputName;
        }

        //如果编码类型不为0,则需要加编码按钮,另外还需要查询编码级联
        if (!inputCodeType.equals("0")) {
            inputCode = " <img class='imageCoding'" + " onclick=showCode('" + inputCodeType + "',this,'" + inputCodeCascade + "')" + " name='coding' /> ";
        }
        inputString.append(inputBody.toString() + inputStar + inputCode + inputTip);
        return inputString.toString();
    }

    public String getInputString() {
        if (modified.equals("0")) {
            return makeUnmodifiedInput();
        } else {
            return makeModifiedInput();
        }
    }

    public String getInputID() {
        return inputID;
    }

    public String getInputName() {
        return inputName;
    }

    public String getInputValue() {
        return inputValue;
    }

    public String getInputMaxLength() {
        return inputMaxLength;
    }

    public String getInputSize() {
        return inputSize;
    }

    public String getInputIsKey() {
        return inputIsKey;
    }

    public String getInputNotNullFlag() {
        return inputNotNullFlag;
    }

    public String getInputInputEnable() {
        return inputInputEnable;
    }

    public String getInputFieldType() {
        return inputFieldType;
    }

    public String getModified() {
        return modified;
    }

    public String getInputCodeType() {
        return inputCodeType;
    }

    public String getInputCodeCascade() {
        return inputCodeCascade;
    }


    public String getKeyNames() {
        return keyNames;
    }

    public void setInputID(String str) {
        inputID = str;
    }

    public void setInputName(String str) {
        inputName = str;
    }

    public void setInputValue(String str) {
        inputValue = str;
    }

    public void setInputMaxLength(String str) {
        inputMaxLength = str;
    }

    public void setInputSize(String str) {
        inputSize = str;
    }

    public void setInputIsKey(String str) {
        inputIsKey = str;
    }

    public void setInputNotNullFlag(String str) {
        inputNotNullFlag = str;
    }

    public void setInputInputEnable(String str) {
        inputInputEnable = str;
    }

    public void setInputFieldType(String str) {
        inputFieldType = str;
    }

    public void setModified(String str) {
        modified = str;
    }

    public void setInputCodeType(String str) {
        inputCodeType = str;
    }

    public void setInputCodeCascade(String str) {
        inputCodeCascade = str;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?