目前我在我的项目中使用 Jeditable 1.6.1 版。我正在尝试使用 onkeyup 事件来验证用户在输入文本字段中输入的值。当我尝试使用 onkeyup 事件时,它不起作用。我不确定 Jeditable 是否支持这个事件。你能帮我解决这个问题吗?
问候 PJ
目前我在我的项目中使用 Jeditable 1.6.1 版。我正在尝试使用 onkeyup 事件来验证用户在输入文本字段中输入的值。当我尝试使用 onkeyup 事件时,它不起作用。我不确定 Jeditable 是否支持这个事件。你能帮我解决这个问题吗?
问候 PJ
这对我有用。
$.editable.addInputType('dernumber', {
element: $.editable.types.text.element,
plugin: function (settings, original) {
$('input', this).bind('keypress', function (event) {
return numbersOnly(event, false);
});
}
});
$('.loremipsum').editable('http://www.example.com/save.php', {
type : 'dernumber',
cancel : 'Cancel',
submit : 'OK'
});
这将是验证键是否为数字的辅助方法:
var numbersOnly = function (e, decimal) {
var key;
var keychar;
if (window.event) {
key = window.event.keyCode;
}
else if (e) {
key = e.which;
}
else {
return true;
}
keychar = String.fromCharCode(key);
if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) {
return true;
}
else if ((("0123456789").indexOf(keychar) > -1)) {
return true;
}
else if (decimal && (keychar == ".")) {
return true;
}
else
return false;
};
试试这个,祝你好运
input.keypress(function(e) {
var key = window.Event ? e.which : e.keyCode
return (key >= 48 && key <= 57)
});
$('td.editable_class', oTable.fnGetNodes()).editable('editable.php', {
"callback": function( sValue, y ) {
var aPos = oTable.fnGetPosition( this );
oTable.fnUpdate( sValue, aPos[0], aPos[1] );
window.location.reload();
},
"submitdata": function ( value, settings ) {
return {
"row_id": this.parentNode.getAttribute('id'),
"column": oTable.fnGetPosition( this )[2]
};
},
"height": "40px"
});