Lotus Notes Web表单 - IE中的textarea问题

时间:2012-07-12 13:51:29

标签: javascript internet-explorer textarea lotus-notes

我有一个用户通过网络访问的莲花笔记表单,在此表单上是一个带有textareas的区域,供用户输入详细信息。提交表单后,该值将作为字符串存储在注释文本字段中。我已使用<br/>替换回车符,以便在通过浏览器查看表单时,文本格式正确。通过浏览器编辑文档时,我将<br>替换为/ r / n,以便textareas具有正确的布局。问题是在IE中第一行textareas显示第一行的文本,并且textarea中的其他文本行被隐藏,如果使用enter或添加字符编辑文本,则隐藏的文本出现。在Chrome和Firefox中,文本正确显示

我有一些javascript将表值写入textareas

//creates columns with fields and buttons
    for(var c=1; c < colCount; c++) {
    switch(c){
    case 1:
    el = document.getElementById("step" + f + "-1");
    if (readMode) {
        el.innerHTML=storeSteps.value;
    } else {
    var t=storeSteps.value.replace(/<br\s?\/?>/g,"\n");
    el.value= t;
    }

该问题仅发生在表的第一行,表的其余部分创建textareas并添加内容而没有任何问题。与此表单上创建textareas的方式的唯一区别是第一行是表单上的计算字段,表单的其余部分使用javascript添加新的字段行

            case 2:
            cell = row.insertCell(i);
            cell.className = "potential-col";
            el = document.createElement(elTagName);
            if (!readMode) {
                el.name = "potential" + tableCount + "-" + rowCount;
            }
            el.id =  "potential" + tableCount + "-" + rowCount;
            el.setAttribute("cols","25");
                el.setAttribute("rows","4");
            cell.appendChild(el);
            break;

使用以下代码

创建表单上的计算字段
    TableCount := "1";

@If(
    @IsDocBeingEdited;
    "<textarea rows=\"4\" cols=\"25\" name=\"step" +TableCount +  "-1\" id=\"step" +TableCount + "-1\" value=\"\"  onfocus=\"displayNextRow(" +TableCount + ")\" /></textarea>";
    "<span id=\"step" +TableCount + "-1\">&nbsp;</span>"
    )

1 个答案:

答案 0 :(得分:0)

答案是关于textarea的样式,有一个宽度为100%的css文件。设置边框样式并将宽度更改为px值并解决瞧问题