【问题标题】:Split HTML 5 date input value into three variables将 HTML 5 日期输入值拆分为三个变量
【发布时间】:2013-06-09 00:23:27
【问题描述】:

我试图让用户选择使用 HTML5 日期输入来通过移动网络调用本机日期选择器。由于无论用户设备是否支持 HTML5,我都不想重复调用相同的方法,因此我计划只向可以使用它的人显示 type="date" 输入。我想从提交的日期输入中获取值并将其传递给三个定义的值。基本上,当用户点击提交时,它会将日期分解为月、日和年,并将它们添加到表单处理器期望接收的字段中。

根据我找到的样本,我有类似的东西,但它不起作用:

$(document).ready(function() {
$('#submit').click(function(){
var dateVal = $('#dateCL').val()
var dateLength = dateVal.length;
var dateSplit = dateVal.split('\/');
var dateMonthLength = dateSplit['\/'].length + 0;
var monthCL = dateVal.slice(monthCLLength);
var dayCL = dateVal.slice(dayCLLength);
var yearCL = dateVal.slice(yearCLLength);
$('#dateCL').val(dateSplit[0]);
$('#month').val(monthCL);
$('#day').val(yearCL);
$('#year').val(monthCL);
return false;
});
});

<form action="mailto:me@me.com">
  <input name="name" id="name" type="text">
  <input name="first_name" id="first_name" type="text"/>
  <input name="last_name" id="last_name" type="text"/>
  <input type="submit" id="submit">
</form>
<form action="mailto:me@me.com">
  <input name="dateCL" id="dateCL" type="date" min="1909" max="2009">
  <input name="monthCL" id="monthCL" type="hidden"/>
  <input name="dayCL" id="dayCL" type="hidden"/>
  <input name="yearCL" id="yearCL" type="hidden"/>

  <input type="submit" id="submit">
</form>

http://jsfiddle.net/7xK53/5/

【问题讨论】:

  • 你能在服务器端处理日期吗?
  • 试图避免这种情况。我的 Java 家伙已经在进行深入的更改,这是为了前端的可访问性。
  • 更新时弄丢了我的小提琴:jsfiddle.net/7xK53/5'
  • 不要将代码附加到$('#submit').click(),而是附加到$('form').submit()(并删除return false
  • 那行不通。实际上,它甚至不必进入输入字段。我需要做的就是绑定到我已经为出生日期定义的变量。因此,如果它可以通过将日期分解为月、日和年来填充这些变量的值,那就提交吧。

标签: jquery html date split


【解决方案1】:

当我在本地或我的网络服务器上运行它时,这似乎在没有 jQuery 的情况下在 Chrome 上工作,但是当我在小提琴上尝试它时它失败了:

function PassTheMic(){
document.getElementById('myField1').value = document.getElementById('myFieldx').value;

}


</script>

<form method="post" action="mailto:me@me.com">
<input type="date" id="myFieldx" value="" name="myFieldx" onBlur="PassTheMic()" min="2012-01-01" max="2013-01-01"/>
<input type="hidden" id="myField1" value="" name="myField1" />
<input type="submit" value="submit" name="submit">
</form>

【讨论】:

    猜你喜欢
    • 2013-12-18
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    • 2020-09-12
    • 2019-04-08
    • 2017-02-25
    • 2013-10-18
    • 2013-08-12
    相关资源
    最近更新 更多