从一种形式写到另一种形式

时间:2009-02-07 21:04:45

标签: javascript text webforms input

我有两种形式。

表格A有三个文字输入; A1,A2,A3。表格B有一个文字输入,B1。

每当您输入表格A上的任何输入时,表格B应立即更新,表格A中的所有三个输入。如果其中一个表格A输入为空,则0应在B1中替换它。

例如,如果我在A1中输入“test”并将A2和A3留空,则B1应反映:test + 0 + 0。如果我在A1中键入“test”,在A2中键入“help”,并且将A3留空,那么B1应该反映:test + help + 0

有人可以协助吗?我对Javascript的使用经验非常有限,所以我甚至不确定如何搜索此功能的这些方面。有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:2)

将方法添加到A表单上每个输入的onChange事件,例如: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 :(得分:1)

使用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;
}

这假设元素ID是A1,A2,A3和B. 将此函数绑定到A1,A2和A3的'onchange'事件。