Вход

Просмотр полной версии : on live и json


psfdek
02.07.2015, 11:48
Проблема! Почему-то не работает on, т.е. на елементы в таблице .Quert_table .Quert_table_item_priority input повешены евенты при смене значения приоритета отправлять запрос к исполнителю и менять этот приоритет, затем если всё ок скрипт внутри #Quert_table1 tbody получает новые элементы данной страницы, но у них уже евенты на .Quert_table .Quert_table_item_priority input не висят и не работает. Как правильно сделать.
PHP возвращает готовый HTML для tbody в data.content

$(document).ready(function () {
function ContentReload() {
var dataList = $("#Quert_table1").attr("data-list");
var dataStart = $("#Quert_table1").attr("data-start");
var dataNum = $("#Quert_table1").attr("data-num");

$.ajax({
type:"POST",
url:'index.html?isNaked=1',
data:'dataList='+dataList+'&dataStart='+dataStart+'&dataNum='+dataNum+'&query=ContentReload',
success: function(response){
data = jQuery.parseJSON(response);
if(data.status=='ok'){
$("#Quert_table1 tbody").html(data.content);
}else{
location.reload('index.html');
}
}
});
}
$( ".Quert_table .Quert_table_item_priority input" ).on('change',function(e){
$(".Quert_table_item_priority input[data-id]").css("border","1px rgb(170, 170, 170) solid");
var val = $(this).val();
var id = $(this).attr("data-id");
var oldVal = $(this).attr("data-value");
$.ajax({
type:"POST",
url:'index.html?isNaked=1',
data:'id='+id+'&Priority='+val+'&query=setPriority',
success: function(response){
data = jQuery.parseJSON(response);
if(data.status=='ok'){
ContentReload();
}else{
$(".Quert_table_item_priority input[data-id="+id+"]").css("border","1px red solid");
}
}
});
});
});

laimas
02.07.2015, 12:07
$(ближайший родитель гарантировано существующий на странице).on('event', 'элемент делегирующий обработку'), ....

psfdek
02.07.2015, 13:27
:dance:
Благодарю!!!!!!!!!!

$( ".Quert_table" ).on('change','.Quert_table_item_checked input',function(){

});