我有7个复选框,描述为星期名称,在它们前面有2个时间标签,一个是开始标签,第二个是结束标签。所以,我想简而言之,就是我尝试在php中制作一个循环。然后,我访问复选框的ID,并将其与时间标记(例如,复选框ID = 1和时间标记id=start[1]
)一起放入。在那之后,我有一个复选框的值以及开始和结束时间,但是不要像每个检查都应该携带自己的数组那样在ajax中传递它。您可以检查输出的图像。
现在,让我们看看创建标签的php代码:-
<body>
<form id="checking" method="POST" >
<?php
$checkbox='';
$weeknames=array(1=>'Monday',2=>'Tuesday',3=>'Wednesday',4=>'Thursday',5=>'Friday',6=>'Saturday',7=>'Sunday');
foreach($weeknames as $key=>$value)
{
$checkbox.='<br/><input type="checkbox" id='.$key.' name="mycheck" value='.$value.' />'.$value.'  Start<input type="time" id=start'.$key.' />End<input type="time" name="timing" id=end'.$key.' />';
}
print_r($checkbox).'<br/>';
?>
<button id="sub" name="btnregister">Submit</button>
</form>
</body>
现在让我们看看jquery和ajax代码:-
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('#checking').submit(function(e){
e.preventDefault();
var myCheckboxes = [];
var check=[];
var start=[];
var startid=[];
var end=[];
$.each($("input[name='mycheck']:checked"), function(){
myCheckboxes.push($(this).val());
check = $(this).attr('id');
start=$('#start'+check).val();
startid=$('#start'+check).attr('id');
end=$('#end'+check).val();
});
$.ajax({
url: "data.php",
type: 'POST',
data: '',
success: function(data) {
if(data!=1)
{
alert('Done');
}
else
{
alert("Not Ok");
}
}
});
});
});
</script>
我不知道如何合并并在将它们保存到数据库后将其发送给ajax。当我选择每个复选框时,我要= Array([start1] => 24:44,26:44)的示例。感谢您的帮助