Я создаю таблицу динамически во время выполнения на основе какого-либо действия в пользовательском интерфейсе следующимCheckbox функция обратного вызова не вызывался из второго OnChange
$(figure.children.data).each(function (i, Column) {
if (i != 0) {
var callBack = function() {
RemoveColumn(figure, Column.figure.id);
}
var input = $("<input>")
.attr("type", "checkbox")
.attr("checked", "checked")
.on("change", callBack);
var tr = $('#tblEntity').append('<tr>');
$("<td>").appendTo(tr).append(input);
$("<td>").appendTo(tr).append(Column.figure.text);
}
});
и функция RemoveColumn
выглядит следующим образом.
function RemoveColumn(figureToBeModified,columnID) {
$(figureToBeModified.children.data).each(function (i, column) {
if (column.figure.id == columnID) {
figureToBeModified.hide(column.figure);
figureToBeModified.remove(column.figure);
}
});
}
Проблема: Когда я снимите флажок в первый раз она работает нормально (значит RemoveColumn
функция вызывался), но послесловие, если я проверить или снимите установите флажок RemoveColumn
не вызывался ,
вы можете предоставить скрипку? – nirmal
Согласен. Я не вижу ничего неправильного в вашем javascript события изменения, но не зная больше о том, что за фигура, трудно сказать, что не так. С помощью [очень упрощенного подхода] (http://jsfiddle.net/6q9vxapj/) он работает, когда он снова вызван. – drs9222