我有两种形式。
表格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的使用经验非常有限,所以我甚至不确定如何搜索此功能的这些方面。有人能指出我正确的方向吗?
答案 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)
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'事件。