javascript - 提交表单操作时更新 2 个值

标签 javascript html

我有一个包含多个字段的表单。我喜欢表单中内置的所有验证,并且禁止我使用 ajax。

问题是:我的表单有一个日期选择器和时间选择器。但我必须将这些值作为它们的组合发送,即 6/7/2013 05:00:00。

根据我所做的研究,我无法在提交之前停下来连接这些值。

我怎样才能做到这一点而不涉及太多的欺骗?

感谢您提供任何有用的提示!

最佳答案

您可以使用隐藏元素,在本例中我们将使用它。

<input type="hidden" name="datetime" value=""/>

当表单上触发提交事件时,运行此事件。

$('form').on('submit', function(){
  var $form = $(this);
  $form.find('[name=datetime]').val( 
    $form.find('[name=date]').val() + ' ' + $form.find('[name=time]').val()
  );
});

编辑

我刚刚意识到这没有标记 jQuery,所以这是我使用普通 javascript 的最佳尝试,假设字段名称为“add”,并且有名为 datetimedate 和的输入时间

var add = document.forms.add;

add.onsubmit = function(e){
  add.datetime.value = add.date.value + ' ' + add.time.value;
}

这绝对应该在服务器端处理。

关于javascript - 提交表单操作时更新 2 个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16990041/

相关文章:

javascript - {{outlet}}、{{yield}}、{{render}} 和 {{partial}} 的 ember 助手不同

javascript - 在 FullPage.js 应用程序内滚动

javascript - jquery中如何向包含字符串的变量附加一个额外的字符

HTML 文本区域样式

javascript - 获取 div 标签下的表格数量

html - 我可以使用 flex 将 <divs> 定位到容器内的左侧和右侧吗?

javascript - 如何使用数组中的每个?

php - 动态添加字段以形成并从 php 脚本访问值

javascript - 在 ng-repeat 中绑定(bind) ngmodel 的正确方法

javascript - jQuery zClip 无法在 Chrome 和 IE9 的 UI 对话框中工作(在 FireFox 中工作)