这是我创建的表格:
<table class="table table-striped table-bordered" id="example">
<thead>
<?php
foreach ($fields as $field_name => $field_display){
echo "<th>".$field_display."</th>";
}
?>
</thead>
<tbody>
<?php
foreach ($users as $row){
echo "<tr>";
foreach($fields as $field_name => $field_display){
if($field_name == 'username'){
echo "<td><a href='#' onclick=\"edituserdata('".$row->username."')\">".$row->$field_name."</a></td>";
}else{
echo "<td>".$row->$field_name."</td>";
}
}
echo "</tr>";
}
?>
</tbody>
</table>
这是我点击一行时出现的引导模式:
<!-- Modal -->
<div id="myModal1" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Update you're data</h3>
</div>
<div class="modal-body">
<?php echo form_open('main/update'); ?>
<?php
$name = array(
'name' => 'name',
'id' => 'name',
'value' => set_value('name')
);
?>
<div class="control-group">
<label class = "control-label" for="name">Name:</label>
<div>
<input type="text" name="name" placeholder="Name" id="name" value="">
<?php echo form_error('name', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Username:</label>
<div>
<input type="text" name="username" placeholder="Username" id="username" value="">
<?php echo form_error('username', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Password: </label>
<div>
<input type="password" name="password" placeholder="Password" id="password" value="">
<?php echo form_error('password', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Retype password: </label>
<div>
<input type="password" name="password1" placeholder="Retype password" id="password1" value="">
<?php echo form_error('password1', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Email address: </label>
<div>
<input type="email" name="email" placeholder="Email" id="email" value="">
<?php echo form_error('email', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Phone number: </label>
<div>
<input type="tel" name="tel" placeholder="Phone number" id="phone_number" value="">
<?php echo form_error('tel', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Description: </label>
<div>
<input type="text" placeholder="Description" name="descr" id="description" value="">
<?php echo form_error('descr', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
</div>
<div class="modal-footer">
<div class="container-fluid">
<div class="row-fluid">
<div class="span5" id="message_add_user_id">
</div>
<div class="span7">
<button id="add_user_submit" type="button" class="btn btn-success">Update <i class="icon-white icon-check"></i> </button>
<button class="btn" onClick="document.location.reload(true)" data-dismiss="modal" >Close</button>
</div>
</div>
</div>
<?php echo form_close();?>
以下是模态出现的函数:
function edituserdata(username){
$('#myModal1').modal('show');
}
当我点击一行时,我希望将该用户的数据放在bootstrap模式的文本字段中。我怎么能这样做?
答案 0 :(得分:1)
您可能希望通过像这样的ajax来完成所有事情:
表格html页面
<table class="table table-striped table-bordered" id="example">
<thead>
<?php
foreach ($fields as $field_name => $field_display){
echo "<th>$field_display</th>";
}
?>
</thead>
<tbody>
<?php
foreach ($users as $row){
echo "<tr>";
foreach($fields as $field_name => $field_display){
if($field_name == 'username'){
echo "<td><a href='#' onclick=\"edituserdata('".$row->username."')\">".$row->$field_name."</a></td>";
} else {
echo "<td>".$row->$field_name."</td>";
}
}
echo "</tr>";
}
?>
</tbody>
</table>
<!-- Modal -->
<div id="myModal1" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Update you're data</h3>
</div>
<div class="modal-body">
<!-- NOTE THE EMPTY MODAL -->
</div>
<div class="modal-footer">
<div class="container-fluid">
<div class="row-fluid">
<div class="span5" id="message_add_user_id">
</div>
<div class="span7">
<button id="add_user_submit" type="button" class="btn btn-success">Update <i class="icon-white icon-check"></i> </button>
<button class="btn" onClick="document.location.reload(true)" data-dismiss="modal" >Close</button>
</div>
</div>
</div>
</div>
</div>
Ajax页面
<?php echo form_open('main/update'); ?>
<?php
// TODO get username from $_GET['username'] and then retrieve all user information from db
// TODO echo user data into form fields
$name = array(
'name' => 'name',
'id' => 'name',
'value' => set_value('name')
);
?>
<div class="control-group">
<label class = "control-label" for="name">Name:</label>
<div>
<input type="text" name="name" placeholder="Name" id="name" value="">
<?php echo form_error('name', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Username:</label>
<div>
<input type="text" name="username" placeholder="Username" id="username" value="">
<?php echo form_error('username', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Password: </label>
<div>
<input type="password" name="password" placeholder="Password" id="password" value="">
<?php echo form_error('password', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Retype password: </label>
<div>
<input type="password" name="password1" placeholder="Retype password" id="password1" value="">
<?php echo form_error('password1', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Email address: </label>
<div>
<input type="email" name="email" placeholder="Email" id="email" value="">
<?php echo form_error('email', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Phone number: </label>
<div>
<input type="tel" name="tel" placeholder="Phone number" id="phone_number" value="">
<?php echo form_error('tel', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<div class="control-group">
<label class = "control-label" for="name">Description: </label>
<div>
<input type="text" placeholder="Description" name="descr" id="description" value="">
<?php echo form_error('descr', '<span class="alert-error help-inline">', '</span>')?>
</div>
</div>
<?php echo form_close();?>
桌面上的Javascript
<script>
function edituserdata(username) {
$.get('url-to-ajax-page', {username: username}, function(resp) {
$('#myModal1 .modal-body').html(resp);
$('#myModal1').modal('show');
});
}
</script>
我们在这里做的是一个包含用户名的表。当您单击用户名时,它会对使用用户数据填充表单数据的页面进行ajax调用,并在模式中显示该内容。
所以这应该让你开始。在提交表单时我没有时间写出其余部分,但是当你点击提交按钮时,你将要做的是另外一个ajax查询,这会将数据发布到相同的ajax网址。如果发布的数据中存在错误,则数据返回时,您将使用ajax响应替换模型主体的内容,否则您将关闭窗口。