8

我正在尝试使用 javascript 用另一个可见的输入字段更新一个隐藏的输入字段...

但我的代码由于某种原因不起作用!

这是我的 JavaScript:

<script language="javascript">
    function process1() {
        document.getElementById("sum_total").value = (document.getElementById("my-item-price").value);
    }
</script>

这是我的表单代码:

<form><input name="A1" type="text" class="A1" id="A1"/></form>

<form><input type="hidden" id="A2" name="A2" value="process1() "/></form>

更新

<script language="javascript"> 
    function process1() { 
        document.getElementById("sum_total").value = (document.getElementById("my-item-price").value); 
    } 
</script>
4

6 回答 6

9

你的代码很糟糕。你没有ids 你在 javascript 中寻找。

尝试这个:

 <script language="javascript">
 function process1(showed) {
    document.getElementById("A2").value = showed.value;
}
</script>

<form><input name="A1" type="text" class="A1" onChange="process1(this)"/></form>

<form><input type="hidden" id="A2" name="A2" value="5" /></form>
于 2013-02-05T14:25:51.060 回答
4

我认为最可靠的是使用 onKeyUp 而不是 onChange 或鼠标事件(onBlur 等)。以下内容会在输入每个字符时更新隐藏字段(我有未隐藏的 A2,因此您可以看到发生了什么)。

<html>
<head>
<script language="javascript">
function process1() {
    document.getElementById("A2").value = (document.getElementById("A1").value);
    }

</script>
</head>
<body>
<form><input name="A1" type="text" class="A1" id="A1" onKeyUp="process1()" /></form>
<form><input id="A2" name="A2" value="" /></form>
</body>
</html>
于 2013-02-05T14:35:06.223 回答
1

试试这个:现场演示

HTML

<form><input name="A1" type="text" class="A1" id="A1"/></form>

<form><input type="hidden" id="A2" name="A2" value=""/></form>

<button onClick="process1();">Update</button>

JS

function process1() { 
    document.getElementById("A2").value = document.getElementById("A1").value; 

    alert(document.getElementById("A2").value);
} 
于 2013-02-05T14:24:33.800 回答
1

您应该绑定一个事件来更新值。例如 onkeyupevent document.getElementById("A1").onkeyup=function() { document.getElementById("A2").value = this.value };

于 2013-02-05T14:31:10.187 回答
0

我将值更改为空白,并为输入提供了一个 onmouseout(如果需要,可以使用其他类型)来执行函数并交换值。

<script language="javascript">
function process1() {
document.getElementById("A2").value = document.getElementById("A1").value;
}

</script>
</head>

<body>



And This Is My form code:

<form><input name="A1" type="text" class="A1" id="A1"/></form>

<form><input type="text" id="A2" name="A2" value="" onmouseout="process1()" /></form>
于 2013-02-05T14:26:44.840 回答
0
<script language="javascript">
function process1() {
    document.getElementById("A1").value = (document.getElementById("A2").value);
}
</script>
And This Is My form code:
<form><input name="A1" type="text" class="A1" id="A1"/></form>

<form><input type="hidden" id="A2" name="A2" value="process1() "/></form>
<div onClick="process1()">doit</div>

确实有效

于 2013-02-05T14:27:26.937 回答