表单和 Bootstrap 模态
Forms and Bootstrap modal
我有这个表单可以让你选择或添加一个选项到下拉字段,问题是当你点击添加选项时,它调用了模式但它也提交了整个表单,但我把一个必需的输入字段上的标记,因此它不会真正通过表单,除非已完成
表格如下:
<div class="col-lg-12">
<form action="<?php echo base_url(); ?>products/purchase" role="form" accept-charset="utf-8" method="post">
<div class="form-group">
<div class="col-lg-12">
<label class="control-label">Name</label>
<input type="text" name="name" class="form-control inline" required>
</div>
</div>
<div class="form-group">
<div class="col-lg-10">
<label class="control-label">Class</label>
<div class="input-group">
<select name="class_ID" class="form-control" required>
<option value="">Select Class</option>
<?php if(!empty($cls)){
if (is_array($cls)){
foreach ($cls as $row) {?>
<option value="<?php echo $row['class_id']?>"><?php echo $row['class_Name']; ?></option>
<?php }
}
}
else{ ?>
<option value=""></option>
<?php }?>
</select>
<span class="input-group-btn">
<button class="btn btn-theme" data-toggle="modal" data-target="#addClass"><i class="fa fa-plus"></i></button>
</span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-lg-12 pull-right">
<input type="submit" class="btn btn-success pull-right" value="Order" style="margin-left:5px;">
</form>
<a href="<?php echo base_url()?>purchases" class="btn btn-default pull-right">Back</a>
</div>
</div>
</div>
和模态:
<div class="modal fade" id="addClass" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="vertical-alignment-helper">
<div class="modal-dialog vertical-align-center">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Add New Product Classification</h4>
</div>
<div class="modal-body">
<form action="<?php echo base_url(); ?>products/add_class" method="post" accept-charset="utf-8" role="form">
<div class="form-group">
<div class="col-lg-6">
<label for="class_Name">Classification Name</label>
<input type="text" name="class_Name" class="form-control">
</div>
</div>
<div class="form-group">
<div class="col-lg-3">
<label for="is_active">Enabled</label>
<select name="is_active" class="form-control">
<option value="1">Yes</option>
<option value="0">No</option>
</select>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<input type="submit" class="btn btn-success" value="ADD">
</form>
</div>
</div>
</div>
</div>
</div>
可能是因为使用了两次class btn-success,你在打开模态时点击它,它在模型页脚的底部触发
平衡您的 html 标签
即对于每个打开的标签,必须存在一个关闭的标签并且顺序也相同。
在您的模式中,您在 div 中打开您的表单标签,该标签在表单标签关闭之前关闭。某些浏览器可能会自动关闭此标记,因此点击您的提交按钮将传播到主表单。
改为
<div>
<form>
</form>
</div>
在 .modal-dialog 之前打开您的表单
改变
<button> to <a> or you can tell <button type="button"> that it's button and should only do what button supposed to do which is not to submit the form
v3schools.com/tags/att_button_type.asp
– 城市
我有这个表单可以让你选择或添加一个选项到下拉字段,问题是当你点击添加选项时,它调用了模式但它也提交了整个表单,但我把一个必需的输入字段上的标记,因此它不会真正通过表单,除非已完成
表格如下:
<div class="col-lg-12">
<form action="<?php echo base_url(); ?>products/purchase" role="form" accept-charset="utf-8" method="post">
<div class="form-group">
<div class="col-lg-12">
<label class="control-label">Name</label>
<input type="text" name="name" class="form-control inline" required>
</div>
</div>
<div class="form-group">
<div class="col-lg-10">
<label class="control-label">Class</label>
<div class="input-group">
<select name="class_ID" class="form-control" required>
<option value="">Select Class</option>
<?php if(!empty($cls)){
if (is_array($cls)){
foreach ($cls as $row) {?>
<option value="<?php echo $row['class_id']?>"><?php echo $row['class_Name']; ?></option>
<?php }
}
}
else{ ?>
<option value=""></option>
<?php }?>
</select>
<span class="input-group-btn">
<button class="btn btn-theme" data-toggle="modal" data-target="#addClass"><i class="fa fa-plus"></i></button>
</span>
</div>
</div>
</div>
<div class="form-group">
<div class="col-lg-12 pull-right">
<input type="submit" class="btn btn-success pull-right" value="Order" style="margin-left:5px;">
</form>
<a href="<?php echo base_url()?>purchases" class="btn btn-default pull-right">Back</a>
</div>
</div>
</div>
和模态:
<div class="modal fade" id="addClass" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="vertical-alignment-helper">
<div class="modal-dialog vertical-align-center">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Add New Product Classification</h4>
</div>
<div class="modal-body">
<form action="<?php echo base_url(); ?>products/add_class" method="post" accept-charset="utf-8" role="form">
<div class="form-group">
<div class="col-lg-6">
<label for="class_Name">Classification Name</label>
<input type="text" name="class_Name" class="form-control">
</div>
</div>
<div class="form-group">
<div class="col-lg-3">
<label for="is_active">Enabled</label>
<select name="is_active" class="form-control">
<option value="1">Yes</option>
<option value="0">No</option>
</select>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<input type="submit" class="btn btn-success" value="ADD">
</form>
</div>
</div>
</div>
</div>
</div>
可能是因为使用了两次class btn-success,你在打开模态时点击它,它在模型页脚的底部触发
平衡您的 html 标签 即对于每个打开的标签,必须存在一个关闭的标签并且顺序也相同。
在您的模式中,您在 div 中打开您的表单标签,该标签在表单标签关闭之前关闭。某些浏览器可能会自动关闭此标记,因此点击您的提交按钮将传播到主表单。
改为
<div>
<form>
</form>
</div>
在 .modal-dialog 之前打开您的表单
改变
<button> to <a> or you can tell <button type="button"> that it's button and should only do what button supposed to do which is not to submit the form
v3schools.com/tags/att_button_type.asp
– 城市