通过点击按钮,相同的表单被添加到该表单下,但我如何才能得到它被打印的次数的值并将其存储在表中。如果用户从模型中添加更多的经验,我如何才能将数据插入到表中。单击按钮时,值字段中的值也应增加,如果用户添加任意数量的体验,我如何输入数据我正在以逐行方式将此数据插入表中
<div class="col-md-12" id="addexperience">
<button type="button" class="btn-primary" style="float:right;" onclick="addexperience()">Add work experience</button>
<input type="hidden" name="1experience" id="1experience" value="<?php $i = 1; ?>">
<div class="form-group">
<label>If yes, fill the following table</label>
<div class="col-md-3">
<label>Status</label>
<select class="form-control" name="status">
<option value="">Select</option>
<option value="1" <?php sel($student_experience['status'], '1'); ?>>Current</option>
<option value="0" <?php sel($student_experience['status'], '0'); ?>>Past</option>
</select>
</div>
<div class="col-md-3">
<label>Designation</label>
<input type="text" class="form-control" name="designation" value="<?php echo esc_output($student_experience['designation']);?>">
</div>
<div class="col-md-3">
<label>Duration</label>
<input type="number" class="form-control" name="duration" value="<?php echo esc_output($student_experience['duration']);?>">
</div>
<div class="col-md-3">
<label>Employer</label>
<input type="text" class="form-control" name="employer" value="<?php echo esc_output($student_experience['employer']);?>">
</div>
</div>
</div>
<script>
function addexperience(){
var i = $('#1experience').val();
i++;
$('#addexperience').append('<div class="col-md-3"> <label>Status</label> <select class="form-control" name="status'+i+'">'+
'<option value="">Select</option>'+
'<option value="Current">Current</option>'+
'<option value="Past">Past</option> </select> </div>'+
'<div class="col-md-3">'+
'<label>Designation</label>'+
'<input type="text" class="form-control" name="designation'+i+'">'+
'</div>'+
'<div class="col-md-3">'+
'<label>Duration</label>'+
'<input type="text" class="form-control" name="duration'+i+'">'+
'</div>'+
'<div class="col-md-3">'+
'<label>Employer</label>'+
'<input type="text" class="form-control" name="employer'+i+'">'+
'</div>'+
'</div>');
$(function () {
$('#1experience').val(i);
});
}
</script>
1条答案
按热度按时间5f0d552i1#
如果您在初始页面显示和javascript函数中稍微修改了HTML,以便将新添加的项分组到单个容器中(
div
),并且初始元素被类似地分组,并且将名称分配给初始显示的元素的直接祖先(这里我选择了data-id='receiver'
),那么推导元素被添加的次数就变成了计算公共父元素中的子元素-querySelectorAll
在这里很有用,尽管毫无疑问,jQuery也有一个简洁的方法来实现这一点。尽管如此,如果您要使用数组语法表单元素名称,如
designation[]
或duration[]
,当提交表单时,您将可以在PHP中以数组的形式访问每个元素(或其他后端语言),作为副产品,使用数组语法意味着您不需要试图在客户端中跟踪这个数量第一个