单击表单1中的按钮:更改表单2中隐藏输入的值(纯javascript)

Click button in form 1: change value of hidden input in form 2 (pure javascript)

本文关键字:表单 输入 javascript 隐藏 按钮 单击      更新时间:2023-09-26

标记:

<form action="index.php" method="post" name="formOne">
    <input type="button" value="Test" onClick="change('myHiddenField')">
    <input type="submit" value="Submit">
</form>
<form action="index.php" method="post" name="formTwo">
    <input name="myHiddenField" type="hidden" value="test">
</form>

单击formOne中的按钮时,我想更改formTwo中隐藏字段的值。我希望只使用简单的JavaScript(而不是JQuery),而不向输入添加ID(只通过它们的名称)

我试过这个JavaScript函数:

function change(field) {
    alert(field.value);
}

如果我将隐藏的输入移动到formOne,它将输出正确的值。修改该函数以输出formTwo中隐藏字段的值的最简单方法是什么?

我也尝试过,但没有成功:

function change(field) {
    alert(document.forms[formTwo].field.value);
}

我想做一些简单的事情来完成这项任务。有可能吗?

<form action="index.php" method="post" name="formOne">
    <input type="button" value="Test" onClick="change('myHiddenField')">
    <input type="submit" value="Submit">
</form>
<form action="index.php" method="post" name="formTwo">
    <input name="myHiddenField" type="hidden" value="test">
</form>

你首先错过了一个结束语")"。其次,您需要一个Javascript来处理用户的操作(此代码应该放在</html>标记之前)。

<script>
   function change(element)
     {
       document.getElementsByName(element)[0].value = "other_value";
     }
</script>

(这假设myHiddenField是第一个或唯一一个具有此名称属性的元素。)

仅此而已。

经过测试,我发现只有当隐藏的输入在formOne中时,上面的答案才有效。不过,我终于找到了一个解决方案,我在这里找到了:http://www.w3schools.com/jsref/coll_doc_forms.asp.

function change(index)
{
    document.forms['formTwo'].item(index).value = "other_value";
}