Codeigniter和javascript添加了动态输入和无线电字段
嗨,伙计们,我在javascript和php方面非常新手。我正在制作一个页面,用户可以选择创建一个收音机或输入字段供其他人解决 一切正常,除了保存表单时,字段的顺序与我添加的顺序不同,因为我先循环“输入”字段,然后循环“无线电”字段。我知道这可能不是办法,请给我一个选择 任何帮助都将不胜感激,提前谢谢 看法Codeigniter和javascript添加了动态输入和无线电字段,javascript,php,jquery,forms,codeigniter,Javascript,Php,Jquery,Forms,Codeigniter,嗨,伙计们,我在javascript和php方面非常新手。我正在制作一个页面,用户可以选择创建一个收音机或输入字段供其他人解决 一切正常,除了保存表单时,字段的顺序与我添加的顺序不同,因为我先循环“输入”字段,然后循环“无线电”字段。我知道这可能不是办法,请给我一个选择 任何帮助都将不胜感激,提前谢谢 看法 像这样的东西可能有用 在JavaScript中维护相同的count变量,以跟踪创建的输入 不要使用name=“fields[]”,而是使用name=“field”+count+”,这样您就可
像这样的东西可能有用 在JavaScript中维护相同的
count
变量,以跟踪创建的输入
不要使用name=“fields[]”
,而是使用name=“field”+count+”
,这样您就可以在控制器中使用循环进行迭代
看法
通过新的$inputs
数组循环调用add\u questions方法
ksort($inputs);
foreach($inputs as $array) {
$id = $array[0];
$value = $array[1];
$tip = $array[2];
$this->page_model->add_questions($id,$value,$tip);
}
$id=$this->input->post('id');
if($_POST['fields']){
foreach ( $_POST['fields'] as $key=>$value ) {
$tip='input';
if($value!=''){
$this->page_model->add_questions($id,$value,$tip);
}
}
}
if($_POST['radios']){
foreach ( $_POST['radios'] as $key=>$value ) {
$tip='radio';
if($value!=''){
$this->page_model->add_questions($id,$value,$tip);
}
}
}
<script type="text/javascript">
var count = 0;
var a=0;
$(function(){
$('span#add_input').click(function(){
count += 1;
$('#pit').append('<p><strong>Pitanje #' + count + '</strong>'+ '<input name="field_' + count + '" type="text" /></p>' );
a=count;
document.write(a);
});
$('span#add_radio').click(function(){
count += 1;
$('#pit').append('<p><strong>DA/NE #' + count + '</strong>'+ '<input name="radio_' + count + '" type="text" /></p>' );
});
});
</script>
$inputs = array();
$id=$this->input->post('id');
foreach($_POST as $key => $value) {
$matches = array();
if (preg_match('/(field|radio)_([\d]+)', $key, $matches)) {
$tip = $matches[1];
$count = $matches[2];
$inputs[$count] = array($id, $value, $tip);
}
}
ksort($inputs);
foreach($inputs as $array) {
$id = $array[0];
$value = $array[1];
$tip = $array[2];
$this->page_model->add_questions($id,$value,$tip);
}