在 JavaScript 中更改输入和提交表单的值

新手上路,请多包涵

我目前正在研究一种基本形式。当您点击提交按钮时,它应该首先更改字段的值,然后像往常一样提交表单。看起来有点像这样:

 <form name="myform" id="myform" action="action.php">
    <input type="hidden" name="myinput" value="0" />
    <input type="text" name="message" value="" />
    <input type="submit" name="submit" onclick="DoSubmit()" />
</form>

这就是我对 JavaScript 代码的了解。它将“myinput”的值更改为 1,但它不提交表单。

 function DoSubmit(){
  document.myform.myinput.value = '1';
  document.getElementById("myform").submit();
}

原文由 Paparappa 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

你可以这样做:

 <form name="myform" action="action.php" onsubmit="DoSubmit();">
    <input type="hidden" name="myinput" value="0" />
    <input type="text" name="message" value="" />
    <input type="submit" name="submit" />
</form>

然后修改你的 DoSubmit 函数,让它只返回 true,表示“没关系,现在可以提交表单了”给浏览器:

 function DoSubmit(){
  document.myform.myinput.value = '1';
  return true;
}

我也会警惕在提交按钮上使用 onclick 事件;事件的顺序不是很明显,如果用户提交,例如,在文本框中点击返回,您的回调将不会被调用。

原文由 valderman 发布,翻译遵循 CC BY-SA 4.0 许可协议

我已经这样做了,它对我有用。首先,您必须添加一个脚本,例如我的 SetHolderParent() 并调用下面的 html 代码。

 function SetHolderParent(value) {
   alert(value);
}
 <input type="submit" value="Submit" onclick="SetHolderParent(222);" />

原文由 navidsoft 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题