2013-05-09 15 views
9

Używam x-editable do bezpośredniej edycji w mojej aplikacji internetowej. Chciałbym przekazać dodatkowe parametry serwerowi, które chciałbym odczytać z atrybutów danych na elemencie wyzwalającym. Oto mój element do edycji:x-edytowalna wartość atrybutu dostępu elementu wyzwalającego

<a href="#" data-url="save_url" data-pk="271" data-type="text" data-value="Value" class="editable" data-param="XXX">Value</a> 

Chciałbym przekazać atrybut danych-param, ale nie wiem jak uzyskać dostęp do elementu wyzwalającego. Próbowałem poprzez $(this).data('param'), ale pojawia się wartość null ... mój pełny kod edycji:

$.fn.editable.defaults.mode = 'inline'; 
$('.editable').editable({ 
    params: { param: $(this).data('param') } 
}); 

Wywołanie $('.editable').data('param') nie przychodzi pod uwagę, ponieważ mam wiele .editable elementy obecne.

Dzięki

Odpowiedz

18

Wymyśliłem to. Odpowiadam na wypadek, gdyby ktoś musiał wiedzieć:

$('.editable').editable({ 
    params: function(params) { 
     // add additional params from data-attributes of trigger element 
     params.param1 = $(this).editable().data('param'); 
     params.param2 = $(this).editable().data('nextparam'); 
     return params; 
    } 
) 
+1

tysięcy dzięki! To powinno być dodane do tego dokumentu biblioteki XEditable! –

+0

Kiedy próbuję użyć tego w parametrze value edytowalnego(), to niezdefiniowane błędy nie są funkcją ' – stef

+0

@stef będziesz musiał udostępnić swój kod, aby ci pomóc –

Powiązane problemy