我真的不知道如何在CodeIgniter项目中组织我的代码。在一个视图中,我有一个表单,允许在提交后有信息。但信息显示在同一视图中。信息以多种方式显示(例如使用PHP或在控制器部分中使用Ajax和JSON编码)。
我的观点:
<form action="#" method="post">
<p>Your name : <input type="text" name="name" /></p>
<p><input type="submit" value="OK"></p>
</form>
我可以在视图中使用它来验证使用按下按钮是否提交?
if (isset($_POST['submit'])) {// the code I want to to show after submit}
单击提交按钮后我想显示的内容:
<select class="mylist">
<?php foreach($groups as $each){ ?>
<option value="<?php echo $each->groupname; ?>"><?php echo $each->groupname; ?></option>';
<?php } ?>
</select>
<table id="table" class="display" style="width:80%">
<thead>
<tr>
<th>Name</th>
<th>SurName</th>
<th>ID</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Name</th>
<th>SurName</th>
<th>ID</th>
</tr>
</tfoot>
</table>
控制器:
public function index()
{
$this->load->view("myview.php");
}
public function getlist()
{
$this->load->model('mymodel');
// Method to get the values of the list in the database
}
public function get_test_datatables()
{
// Method to fill the datatable part
echo json_encode($output);
}
JS Functions :
$(document).ready( function () {
$('#table').DataTable({
//Get the data with ajax
})
)}
按下提交按钮后,我还要检查是否选中了复选框(如果在数据库中它等于true,我必须选中复选框,如果它等于false,我不会必须检查它)。我是否应该在视图中执行类似的操作:
if(checkbox->value == true)
{
<input type="checkbox" name="vehicle" value="Bike" checked> I have a bike<br>
}
else {
<input type="checkbox" name="vehicle" value="Bike"> I have a bike<br>
}
由于
答案 0 :(得分:0)
在我的项目中,我总是通过ajax($ .post())发送数据,并将视图分成两个div:一个是列表,哪个是可见的,另一个是表单,是不可见的。 在列表部分,有一个按钮切换到窗体。 当我点击提交时,发送数据,如果成功,则显示成功消息并返回列表div。
HTML:
<div id="div-form" style="display: none;">
<form>
<p>Your name : <input type="text" name="name" /></p>
<button type="button" id="save">OK</button>
<button type="button" id="cancel">Cancel</button>
</form>
</div>
<div id="div-list">
<button type="button" id="add">Add</button>
<select class="mylist">
<?php foreach($groups as $each): ?>
<option value="<?= $each->groupname; ?>">
<?= $each->groupname; ?>
</option>';
<?php endif; ?>
</select>
<table id="table" class="display" style="width:80%">
<thead>
<tr>
<th>Name</th>
<th>SurName</th>
<th>ID</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Name</th>
<th>SurName</th>
<th>ID</th>
</tr>
</tfoot>
</table>
</div>
使用Javascript:
$(document).ready( function () {
$(document).on('click', "#add", function() {
$("#div-form").show();
$("#div-list").hide();
});
$(document).on('click', "#save", function() {
$.post('service_link', {
name: $("#name").val()
}, function(data) {
$("#div-list").show();
$("#div-form").hide();
$('#table').DataTable().ajax.reload();
}, 'json');
});
$(document).on('click', "#cancel", function() {
$("#div-list").show();
$("#div-form").hide();
});
$('#table').DataTable({
//Get the data with ajax
})
});