Jquery Jeditable Codeigniter отправляет несколько значений

У меня есть идентификатор, который является идентификатором базы данных для строки, которую я хочу обновить, а затем новое значение, которое передается при нажатии клавиши ввода. То, что я хочу сделать, это назначить ячейку базы данных, которая должна быть обновлена ​​как значение rel. На данный момент он передает только db_cell_1 независимо от того, какую ячейку я нажимаю для редактирования. Если я нажму вторую ячейку на своей html-странице, я хочу, чтобы она отправила db_cell_2. Я надеюсь, что я ясно дал понять о проблеме, с которой сталкиваюсь. Любые указатели в правильном направлении будут оценены.

HTML:

<td  id="<?echo $value['ID'];?>" class="merv_editable" rel="db_cell_1" style="text-align: left;" > <?echo $value['nom_nosauk'];?></td>
<td id="<?echo $value['ID'];?>" class="merv_editable" rel="db_cell_2"><?echo $value['merv'];?></td>

JQuery:

$('.merv_editable').click(function(){

var attrval = $(this).attr('rel');

$('.merv_editable').editable('http://www.draugiem.lv',{
id   : 'elementid',
name : 'newvalue',
submitdata : {pzid : attrval}
});
});

1

Решение

Проблема связана с использованием класса в качестве инициатора editable вызов. Так как вы уже находитесь в одном экземпляре потенциально многих из класса (из события click одного элемента), у вас есть область действия $(this) который ссылается только на единственный элемент, который был нажат. Затем вы можете передать этот элемент редактируемому вызову, чтобы вызвать правильный элемент, а не только первый в исходном коде.

Чтобы исправить, код просто должен ссылаться на текущий активированный элемент, ярлык которого $(this) директивы.

$('.merv_editable').click(function(){
var attrval = $(this).attr('rel');

$(this).editable('http://www.draugiem.lv',{
id   : 'elementid',
name : 'newvalue',
submitdata : {pzid : attrval}
});
});
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]