我一直试图弄清楚这几个小时无济于事。
我有以下
http://vitalets.github.com/x-editable/docs.html#newrecord
新记录模块/代码。它的功能是,一旦所有行都有它们的数据,并且它被提交,它就会保留它的值,以便它可以保持可编辑状态。
我尝试添加输入,在ajax请求成功时选择清除代码,并尝试将.editable函数放在ajaxComplete函数中,以查看它是否会在提交时重新加载元素,但它没有。看看演示。输入数据,然后提交。然后它使数据“永久”,以便它可以继续编辑。
我删除了隐藏按钮的代码。
我想要它做的是,提交记录并重置,以便我可以提交另一个表格为“空”并返回默认值。
我正在开发一种设备跟踪器,如果技术人员可以一个接一个地输入记录,我会很高兴。我确定它是一个简单的修复重置表单,我只是无法搞清楚。
我附上了它的截屏视频。
答案 0 :(得分:9)
因为这是一个很受欢迎的问题,我在文档中添加了重置按钮。
$('#reset-btn').click(function() {
$('.myeditable').editable('setValue', null) //clear values
.editable('option', 'pk', null) //clear pk
.removeClass('editable-unsaved'); //remove bold css
$('#save-btn').show();
$('#msg').hide();
});
最好使用.editable('setValue', null)
代替.text('Empty')
,因为我们还需要重置内部值。
HTH
答案 1 :(得分:0)
如果你看一下如何实现“保存新用户button
”,它只会选择类名为myeditable
您可以将功能绑定到“重置”按钮,也可以使用此脚本onclick
IF onclick:
jQuery.each($('.myeditable'),function() {
$(this).text('Empty') ; //this is your default text
});
OR as a function
function reset_myeditable()
{
jQuery.each($('.myeditable'),function() {
$(this).text('Empty') ; //this is your default text
});
}
并将其附加到onclick
按钮的reset
处理程序
我假设您将放置一个“重置”按钮
修改
确定放大$('#save-btn').click(function() success handler
success: function(data, config) {
if(data && data.id) { //record created, response like {"id": 2}
$(this).editable('option', 'pk', data.id);
//remove unsaved class
$(this).removeClass('editable-unsaved');
//show messages
var msg = 'New user created! Now editables submit individually.';
$('#msg').addClass('alert-success').removeClass('alert-error').html(msg).show();
$('#save-btn').hide();
$(this).off('save.newuser');
/**this the edited part**/
jQuery.each($('.myeditable'),function() {
$(this).text('Empty') ; //this is your default text
});
/**end of edit**/
} else if(data && data.errors){
//server-side validation error, response like {"errors": {"username": "username already exist"} }
config.error.call(this, data.errors);
}
},