我需要调用什么来获取x-editable返回的文本的更新值?有一个包含多个值的表,当更改时应该更改进度条的颜色。更改GroupCurrentHPi的文本值后,我想根据它的值更新进度条HPProgressBari的颜色。
我使用的是$(this).text(),但这似乎只是在更改之前获取值,而不是在更改之后。
$(document).ready(function() {
$('#GroupUserData').DataTable();
$.fn.editable.defaults.mode = 'popup';
$.fn.editable.defaults.url = 'Post.php';
$.fn.editable.defaults.responseTime = 200;
var GroupMembers = document.getElementById("GROUPCOUNTVAL").value;
if (GroupMembers>0) {
for (i = 0; i < GroupMembers; i++) {
$('#GroupCurrentHP' + i).editable({
name: 'selected_hp'
});
$('#GroupCurrentHP' + i).on('save', function(e, params) {
updateColor("#HPProgressBar" + i,$(this).text());
});
}
}
function updateColor(progressBar, value){
if(value > 100) {value = 100}
if (value == 100) {$(progressBar).css({'background-color': "#006600"})}
if ((value > 75) && (value < 100)) {$(progressBar).css({'background-color': "#4dff4d"})}
if ((value > 50) && (value < 75)) {$(progressBar).css({'background-color': "#FA6539"})}
if ((value > 25) && (value < 50)) {$(progressBar).css({'background-color': "#F6A942"})}
if ((value > 0) && (value < 25)) {$(progressBar).css({'background-color': "#CF6363"})}
if (value < 0) {$(progressBar).css({'background-color': "#FF0000"})}
}
});
答案 0 :(得分:0)
你试过这个吗?
$('#GroupCurrentHP' + i).on('save', function(e, params) {
updateColor("#HPProgressBar" + i, params.newValue);
});