需要使用隐藏输入字段

时间:2017-04-20 11:28:35

标签: javascript jquery html datepicker

我正在创建一个用于发布数据的php表单。其中一个元素是Datepicker JS元素。我将来自datepicker的输入传递给隐藏的输入字段。现在我想要这个日期选择器。如果我要求输入字段,它似乎不起作用,因为它是隐藏的,它必须保持隐藏状态。有人知道最好的方法吗?

代码:

<div class="col-md-4 col-sm-12 ">
    <div id="date"></div>
    <label>Datum geselecteerd: </label>
    <input type="hidden" id="datefield" name="date" required/>
    <script type="text/javascript">
        var selected;
        $('#date').datepicker({beforeShowDay: function(date){
            return [date.getDay() != 1 & date.getDay() != 2 & date.getDay() != 3 & date.getDay() != 5 & date.getDay() != 0, ''];
        }});
        $(function() {
            $('#date').datepicker({ dateFormat: "dd-mm-yy" });
            $('#date').on("change",function(){
                selected = $(this).val();
                document.getElementById('datefield').value = selected;
            });
        });
    </script>
</div>

1 个答案:

答案 0 :(得分:0)

你可以在jquery中使用.submit(),在提交表单时调用它,你可以检查是否填写了日期字段。 有关详细信息,请访问:https://api.jquery.com/submit/

此外,您应该使用php检查它,您处理表单发送给您的数据,如果未填写,您应该再次发送用户填写表格并发出警告说他没有填写字段

示例:

<form id="myform" action="" method="get">
<input type="hidden" id="datefield" name="date" />
<input type="submit" />
</form>
<script>
$( "#myform" ).submit(function( event ) {
   if(  $("#datefield").val().length === 0 ) {
    alert('not filled');
    }
  event.preventDefault();
});
</script>