Запись из одной формы в другую - PullRequest
0 голосов
/ 08 февраля 2009

У меня есть две формы.

Форма А имеет три текстовых ввода; А1, А2, А3. Форма B имеет один текстовый ввод, B1.

Всякий раз, когда вы вводите любой из входных данных в форме A, форма B должна сразу же обновляться со всеми тремя входными данными из формы A. Если один из входных данных формы A пуст, 0 заменяет его в B1.

Например, если я набираю «test» в A1 и оставляю A2 и A3 пустыми, B1 должен отображать: test + 0 + 0. Если я набираю «test» в A1 и «help» в A2, и оставляю A3 пустым, то B1 должен отражать: test + help + 0

Кто-нибудь может помочь с этим? У меня очень ограниченный опыт работы с Javascript, поэтому я даже не уверен, как искать такие аспекты этой функции. Может ли кто-нибудь указать мне правильное направление?

Ответы [ 2 ]

2 голосов
/ 08 февраля 2009

Добавить метод к событию onChange каждого ввода в форме A, например: onChange = populateBField ();

Function populateBField(){
 document.formB.B1.value = getFieldContents("A1") + "+" + getFieldContents("A2") 
 + "+" + getFieldContents("A3");
}

function getFieldContents(fieldName){
   var fieldValue = document.formA.fieldName.value;
   // if no value is entered, set to 0
   if (fieldValue.length < 1){
       fieldValue = 0;
   }
   return fieldValue;
}

Пожалуйста, укажите на любые ошибки / улучшения, так как я сам относительный новичок в JS:)

1 голос
/ 08 февраля 2009

Начало, используя prototype.js

function build_b() {
    var str = "";
    str += "A1=" + ($F('A1') == ''? '0' : $F('A1'));
    str += "A2=" + ($F('A2') == ''? '0' : $F('A2'));
    str += "A2=" + ($F('A3') == ''? '0' : $F('A3'));
    $('B').value = str;
}

Предполагается, что идентификаторы элемента: A1, A2, A3 и B. Свяжите эту функцию с событием onchange A1, A2 и A3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...