Skip to main content Link Menu Expand (external link) Document Search Copy Copied

JavaScript

Podsumowanie:

Akcje JavaScript umożliwiają uruchamianie kodu JavaScript w aplikacjach nAxiom. W akcjach można odwoływać się do pól formularza, używając składni FormDataContext.PoleFormularza, gdzie PoleFormularza to wartość właściwości Pole formularza. Możliwe jest także odwoływanie się do początkowych wartości z kontekstu (po otwarciu formularza). Należy wówczas użyć selektora FormStartupDataContext. W akcji JavaScript dostępna jest także funkcja odświeżania listy wyboru: refreshDropDownControl(‘KodListy’), gdzie KodListy to wartość właściwości Kod kontrolki listy wyboru.

AdminSPA > NARZĘDZIA > Akcje > JavaScript

Akcja JavaScript
Akcja JavaScript

Oprócz właściwości wspólnych dla wszystkich akcji, w akcji JavaScript należy określić następujące właściwości:

JavaScript: funkcja JavaScript, która będzie wykonywana po wywołaniu akcji.

Powyżej okna kodu znajduje się przycisk Lista dostępnych wbudowanych funkcji. Po kliknięciu wyświetlane są dostępne wbudowane funkcje Javascript. Kliknięcie funkcji powoduje wstawienie jej do okna kodu.

Odwołania do kontrolek formularza

Począwszy od wersji 1.15.7.0, w związku z aktualizacją biblioteki Kendo, zmienił się sposób renderowania kontrolek w aplikacji Front SPA. Obecnie kontrolki Kendo renderowane są jako element hostujący zawierający właściwy element input.

W przypadkach zastosowania w formularzu własnego kodu JavaScript mającego na celu wstawianie danych do inputów kontrolek (np. z urządzeń peryferyjnych komputera) może być konieczne jego dostosowanie polegające na wprowadzeniu odwołań bezpośrednio do inputów kontrolek formularza.

Dla pola tekstowego

<kendo-textbox
  id="SerialNumber560"
  data-code="RPT-StockRotation-ccs75">
  <input
    class="k-input-inner"
    type="text"
    placeholder="Miejsce na kod SN">
</kendo-textbox>

Zalecanym rozwiązaniem jest wyszukiwanie kontrolki za pomocą stabilnego atrybutu data-code przechowującego kod kontrolki, a następnie pobranie znajdującego się w niej elementu input:

const textbox = document.querySelector('[data-code="RPT-StockRotation-ccs75"]');
const input = textbox.querySelector("input");

Takie podejście jest niezależne od dynamicznie generowanych identyfikatorów i zapewnia poprawny dostęp do wartości kontrolki we wszystkich środowiskach.

Nieprawidłowa (zdeprecjonowana) instrukcja:

const sn_input = document.getElementById("SerialNumber560");

zwraca element kendo-textbox (host), a nie pole wejściowe input. Operacje wykonywane bezpośrednio na wartości pola mogą więc działać nieprawidłowo.


Copyright © 2025 OPTEAM SA. Theme Copyright © 2017-2020 Patrick Marsceill. Distributed by an MIT license.