当我创建的表单所显示的数据需要一个不同的name属性时,如何创建一个数据循环?
我编写了一个jQuery代码来创建如下元素:
$("#loadDataSiswa").append(""+
"<div class='grid_2xxx kekiri'>" + nm_depan + "</div>"+
"<div class='grid_5xxx kekanan'> \n"+
"<input type='radio' name='"+id+"' value='1'> Masuk"+
"<input type='radio' name='"+id+"' value='2'> Tidak Masuk"+
"<input type='radio' name='"+id+"' value='3'> Sakit"+
"<input type='radio' name='"+id+"' value='4'> Tidak Ada Kabar"+
"</div>"+
"");id和nm_depan值已经在ajax过程中完成了。
如果您查看上面的代码,我必须使用不同的属性名来表示要显示的表单,如下所示

表单,以生成应选择每一行的收音机元素。
foreach($_POST as $val) {
// Insert to DB
}在这里,我陷入了麻烦。如果某个特定的id选择了值,我将如何创建一个循环来获取id的值?在PHP中如何使用不同的name属性循环?因为在这里,我使用从ajax获得的id更改每个属性的名称。
发布于 2016-12-02 11:47:17
您的问题可以通过将隐藏的输入与某个无线电组联系起来来解决。
添加带有id值的隐藏输入:
"<input type='hidden' name='radioList[]' value='" + id + "'" />"这个输入是一个数组,所以您可以遍历。
下一步,您必须修改您的无线电组以与您的id相关联。
"<input type='radio' name='myradio["+id+"]' value='1'> Masuk"+
"<input type='radio' name='myradio["+id+"]' value='2'> Tidak Masuk"+
"<input type='radio' name='myradio["+id+"]' value='3'> Sakit"+
"<input type='radio' name='myradio["+id+"]' value='4'> Tidak Ada Kabar"+因此,在您的代码中,您应该能够:
//Iterate through any inserted id from a group
foreach($_POST['radioList'] as $id)
{
//if you didn't let any pre checked value, you need use this if
if(isset($_POST['myradio'][$id])
{
echo $_POST['myradio'][$id];//checked value this group
}
}毕竟,您应该能够拥有与无穷大列表相关联的任意数量的单选按钮。
发布于 2016-12-02 11:47:03
要获取post变量中的键,请尝试以下操作。$key保存表单中的name属性(javascript id var)。
foreach($_POST as $key => $value){
if($key == "whatever") ....
}发布于 2016-12-02 11:52:04
您可以使用部分名称选择器。请参考这个https://api.jquery.com/attribute-contains-selector/,或者您可以给输入一个类来循环它们。
https://stackoverflow.com/questions/40930940
复制相似问题