2016-08-26 4 views
0

В моем приложении APEX у меня есть процедура вычисления, реализованная в Javascript. Вход берется из нескольких текстовых полей. Я хочу, чтобы подпрограмма вычисления работала каждый раз, когда любое из этих текстовых полей было изменено. Используя динамические действия, как я могу поделиться этой функцией Javascript между несколькими действиями изменения текстового поля? Предпочтительно избегать любых модификаций CSS.Как использовать ту же процедуру JavaScript для нескольких текстовых полей?

+0

Не можете ли вы использовать обработчик 'onChange' даже во всех текстовых окнах, указывая на одну функцию js? –

+0

Вопрос в том, где находится эта функция js? Естественно, я поместил его в Dynamic Action. Но тогда у меня будет так много динамических действий, как текстовые поля, которые у меня есть, и копия функции JS всюду. – Pablo

+0

У вас нет уникального класса css (для всех ваших динамических текстовых полей), чтобы вы могли установить jQuery evenhandler на основе этого единственного селектора классов, благодаря которому вы можете избежать копирования функции JS повсюду. –

ответ

2

Вы можете выбрать несколько элементов страницы, указав сингл динамическое действие для запуска при изменении. Они разделены запятыми в поле . Элементы (0) Поле (ключ находится в названии).

Также, как упоминалось выше, вы можете использовать класс CSS для группировки своих элементов. Что касается того, плохо ли это, проверьте этот вопрос.

Best practice: class or data attribute as identifier

Лично я чувствую себя комфортно, используя классы позволяют легко JQuery селекторы и одновременно очень часто и изначально поддерживается в APEX.