добавить имя текстовой области в document.form - PullRequest
1 голос
/ 14 декабря 2011

Ниже приведена функция, которая не работает ... при попытке добавить "newTextArea" к "document.postform.nTextArea"

Кто-нибудь может мне помочь?

function AddText(text, newTextArea) {

    nTextArea = newTextArea;


    var tarea = document.postform.nTextArea;
    alert(nTextArea);
    if (typeof tarea.selectionStart != 'undefined'){ // if it supports DOM2
        start = tarea.selectionStart;
        end = tarea.selectionEnd;
        tarea.value = tarea.value.substr(0,tarea.selectionStart)
            + text + tarea.value.substr(tarea.selectionEnd);
        tarea.focus();
        tarea.selectionStart = ((start - end) == 0) ? start + text.length : start;
        tarea.selectionEnd = start + text.length;
    } else {
        if (tarea.createTextRange && tarea.caretPos) {
            var caretPos = tarea.caretPos;
            caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?   text + ' ' : text;
        }
        else {
            tarea.value += text;
        }
        tarea.focus(caretPos);
    }
}

1 Ответ

0 голосов
/ 14 декабря 2011

Если newTextArea - это имя элемента textarea, правильный способ получить к нему доступ с помощью следующего кода:

var tarea = document.postform.elements[newTextArea];
if (typeof tarea.selectionStart != 'undefined'){ // if it supports DOM2
    //...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...