Jeditable - Активируйте редактирование X путем нажатия на Y

15
задан Mika Tuupola 9 August 2013 в 08:35
поделиться

4 ответа

Приведенный выше код тоже не совсем правильный. Он запускает событие click для ВСЕХ экземпляров Jeditable.

Есть много способов сделать это, и все зависит от вашего HTML, но, например, если у вас следующий HTML:

<div class="edit" id="unique_id">Editable text</div> 
<a href="#" class="edit_trigger">Edit me!!</a>

Тогда вы можете использовать следующий JavaScript:

/* Bind Jeditable instances to "edit" event. */
$(".edit").editable("http://www.example.com/save.php", {
    event     : "edit"
});
/* Find and trigger "edit" event on correct Jeditable instance. */
$(".edit_trigger").bind("click", function() {
    $(this).prev().trigger("edit");
}); 
24
ответ дан 1 December 2019 в 02:20
поделиться

Можно поместить этот код в функцию щелчка другого элемента. пример:

HTML:

<a class="clickme">Click me to edit</a>
<div class="edit">Edit Me!</div>

jQuery:

$(document).ready(function() {
$("a.clickme").click(function(){
     $('.edit').editable('http://www.example.com/save.php');
});
});
2
ответ дан 1 December 2019 в 02:20
поделиться

Хорошо, ответ Ata не вполне работал, но он действительно устанавливал меня на правильном пути:

$(document).ready(function() {
    $('.edit').editable('http://www.example.com/save.php');
    $("a.clickme").click(function(){
          $('.edit').click();
   });
});
2
ответ дан 1 December 2019 в 02:20
поделиться

Я объединил возможности двух предыдущих ответов для нацеливания на следующий редактируемый элемент следующим образом:

/ * Находим и запускаем событие «редактирования» в следующем экземпляре Jeditable. * / $ (". edit_trigger"). livequery ('click', function () { $ (это) .next (). click (); });

1
ответ дан 1 December 2019 в 02:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: