我正在尝试实施一个时钟系统,用户从下拉菜单中选择一周,然后显示该周所有日期的列表 - 如果它们打算在一天工作,则显示为绿色,如果不是它显示为红色。然后,用户选择日期,输入时间并提交表单。
最初我使用了两个下拉列表,但由于我无法在下拉列表中可靠地设置选项,因此我更改为使用AJAX将日期显示为列表。我的问题是我需要能够传递用户点击表单的所选日期。
<?php
if (isset($_REQUEST['submit'])) {
print_r($_REQUEST);
}
?>
<form name="form1" id="form1">
<select name="week" id="week">
<option value=""></option>
<option value="2015-01-12">2015-01-12</option>
<option value="2015-01-05">2015-01-05</option>
</select>
<div id="output"></div>
<input type="submit" name="submit" value="Submit">
</form>
<script type='text/javascript'>
$(document).ready(function(){
$("#week").change(function(){
var wb = $("#week").val();
var e = 4387;
var c = 1;
$.ajax({
url : 'get.php',
type : 'POST',
data : { wb : wb, e : e, c : c},
success:function(data){
$('#output').html(data);
}
});
});
});
</script>
AJAX返回日期,我得到如下输出 - 每个日期的输入类型都隐藏了它的值,因此它应该以表格提交:
2015-01-12 | 2015-01-13 | 2015-01-14 | 2015-01-15 | 2015-01-16 | 2015-01-17 | 2015-01-18
<input type="hidden" name="date" value="2015-01-12"><span style="color:green">2015-01-12</span> |
<input type="hidden" name="date" value="2015-01-13"><span style="color:green">2015-01-13</span> |
<input type="hidden" name="date" value="2015-01-14"><span style="color:green">2015-01-14</span> |
<input type="hidden" name="date" value="2015-01-15"><span style="color:green">2015-01-15</span> |
<input type="hidden" name="date" value="2015-01-16"><span style="color:green">2015-01-16</span> |
<input type="hidden" name="date" value="2015-01-17"><span style="color:red">2015-01-17</span> |
<input type="hidden" name="date" value="2015-01-18"><span style="color:red">2015-01-18</span>
然而,当我提交表格时,我刚刚收到:
Array ( [week] => 2015-01-12 [submit] => Submit )
并且缺少所选日期 - 为什么隐藏字段未提交,如何仅将点击日期传递给表单以便与其他表单数据一起提交?