Php 检测'上最后编辑的元素;外部';点击
奇怪的标题,但也不是那么普通的情况/问题 我在html表格行中有可编辑字段:Php 检测'上最后编辑的元素;外部';点击,php,jquery,ajax,codeigniter,Php,Jquery,Ajax,Codeigniter,奇怪的标题,但也不是那么普通的情况/问题 我在html表格行中有可编辑字段: <?php foreach($userlist as $key=>$val): ?> <tr class="content" id="example" data-id="<?php echo $val->id; ?>"> <td valign="top" class="editable" data-delid="<?php echo $val-&
<?php foreach($userlist as $key=>$val): ?>
<tr class="content" id="example" data-id="<?php echo $val->id; ?>">
<td valign="top" class="editable" data-delid="<?php echo $val->id; ?>" data-name="id" ><?php echo $val->id; ?></td>
<td valign="top" class="editable" data-name="username"><?php echo $val->username; ?></td>
<td valign="top" class="editable" data-name="firstname"><?php echo $val->firstname; ?></td>
<td valign="top" class="editable" data-name="lastname"><?php echo $val->lastname; ?></td>
<td valign="top" class="editable" data-name="email"><?php echo $val->email; ?></td>
<td valign="top" class="editable" data-name="phone"><?php echo $val->phone; ?></td>
<td valign="top" class="editable" data-name="activated"><?php echo $val->activated; ?></td>
<td valign="top" class="editable" data-name="role"><?php echo $val->role; ?></td>
<!--<td><input class="see_more" type="button" value="Reveal More" /></td>-->
</tr>
<tr class="test_table">
</tr>
<?php endforeach; ?>
如果希望在单击文本字段时发送AJAX请求以保存某些数据,则JQuery blur事件会执行此操作(当元素失去焦点时触发)。在您的情况下,它将类似于:
$('.editable').blur(function() {
$.ajax('/backend_function_to_save_data', {
type: 'POST',
dataType: 'json',
data: {
value: $(this).val()
},
error: function(jqXHR, textStatus, errorThrown) {
// Handle error
},
success: function(data, textStatus, jqXHR) {
// Success message?
}
});
});
您是否尝试过JQuery“模糊”事件?它在元素失去焦点()时触发。我已经检查了它,但我不确定如何使用它,在本例中。。。在文档体上单击(某处)应启动ajax更新。。。顺便说一句,我试着检查是否选择了行hasClass,但是。。。单击表行以切换所选类(已在代码中,我想应该保留该功能)-因此,第二次单击-无需进一步操作的数据…:(是的,似乎是合理的,但现在我有一个奇怪的问题->元素没有失去焦点(omg)…我将重新检查代码…这似乎是唯一可能的解决方案。谢谢!我现在可能要自杀了。:DNo问题,很高兴帮助!
$('.editable').blur(function() {
$.ajax('/backend_function_to_save_data', {
type: 'POST',
dataType: 'json',
data: {
value: $(this).val()
},
error: function(jqXHR, textStatus, errorThrown) {
// Handle error
},
success: function(data, textStatus, jqXHR) {
// Success message?
}
});
});