【问题标题】:Retrieve field from dynamically generated HTML form从动态生成的 HTML 表单中检索字段
【发布时间】:2013-08-19 10:49:04
【问题描述】:

我有一个表单,允许用户使用 JQuery 动态克隆一些字段(请参阅here for example)。

<form  name="add_treatment" method="post" action="<?php echo thisURL() ?>">
     <fieldset>
       <legend>Choose treatment</legend> 
       <select id="treatment_id" name="treatment">
           <option>1</option>
           <option>2</option>
           <option>3</option>
       </select>
    </fieldset>

    <fieldset id="event-set">
       <legend>Event</legend>    
       Start <input type="number" name="start"><br>
       End <input type="number" name="end">
    </fieldset>

    <div id="newFields"></div>

    <input type="button" value="+ Add event" id="addInputs" style="width: 20%"/><br><hr>

    <input type="submit" value="Display">
</form>

<script type="text/javascript">
    $('#addInputs').click(function() {
        $('#event-set').clone().appendTo('#newFields');    
    }); 
</script>

表单用于通过“post”方法显示数据。不同字段的名称属性用于从 POST 方法中提取它们。所以我在脚本的开头有这段代码:

<?php if($_POST){
 echo $_POST['treatment'];
 echo $_POST['start'];
 echo $_POST['end'];
} ?> 

问题,当我复制一些字段时,它们都具有相同的名称属性。有没有办法检索所有具有相同名称的字段,或区分它们?

提前致谢。

【问题讨论】:

    标签: php jquery html


    【解决方案1】:

    用途:

        Start <input type="number" name="start[]"><br>
        End <input type="number" name="end[]">
    

    代替:

        Start <input type="number" name="start"><br>
        End <input type="number" name="end">
    

    那么你将在 $_POST['start'] 和 $_POST['end'] 中有一个数组。

    见:Array posting in PHP

    【讨论】:

      【解决方案2】:

      您可以像这样获取所有名为“start”的输入

      $("input[name='start']")
      

      【讨论】:

        【解决方案3】:

        用途:

        Start <input type="number" name="start[]"><br>
        End <input type="number" name="end[]">
        

        代替:

        Start <input type="number" name="start"><br>
        End <input type="number" name="end">
        

        updated code

        【讨论】:

          猜你喜欢
          • 2020-05-15
          • 1970-01-01
          • 2010-10-11
          • 2011-11-13
          • 1970-01-01
          • 2011-03-22
          • 1970-01-01
          • 1970-01-01
          • 2018-05-25
          相关资源
          最近更新 更多