При записи любых выражений между операндами и операциями рекомендуется ставить пробел.
var a; a = 5 + 7 - s_name.value; // рекомендуется a=5+7-s_name.value; // не рекомендуется
Если объект поддерживает простое значение, то его запись выполняется через атрибут value. Например,
number1.value = 555;
Если объект поддерживает значение типа массив, то его запись выполняется через следующий синтаксис:
view1[1][5] = "Hello!";
Запись поддерживается только view. Чтение поддерживается из view и query.
Многие тэги могут иметь значение, которое может быть либо простым (строковый тип) либо массивом (как правило двумерным).
Обращение к простому значению - стандартно, через атрибут value.
Обращение к массиву - указывая конкретные колонки, например,
combo1.item=view[][1,5];
У view можно в качестве второго индекса использовать name колонок. Например,
view[]['id', 'address']
Combobox-у можно присваивать одномерный массив. В этом случае имя пункта и его значение value будут совпадать.
Значение атрибутов в любом тэге можно параметризовать и устанавливая парметрам различные значения можно изменять поведение объекта.
Формат использования параметра:
%my_param_name
Формат передачи значения параметра (эмулируется под работу с атрибутом, только со служебным префиксом «param:»):
param:my_param_name="param_value"
Пример:
window.param:ttt="Hello"; window.title="%ttt, World!"; window2.title=window.param:ttt + ", Earth!";
Кроме этого поддерживается способ массовой передачи значений параметров через {p_name⇒p_value, …}
Пример:
window{ttt=>"Hello", ttt2=>", World!"}; window.title="%ttt%tt2";
При вызове функции по ее имени интерпретатор ищет ее в следующем порядке:
Значение id можно записывать в виде выражения в любом месте appxml-кода (в событийных атрибутах).
Например, берем значение параметра ttt из объекта window1 и конкатенируем к нему строку «_1». Таким образом получаем id искомого объекта.
${window1.param:ttt + "_1"}.visible = true;
или так
${window1.param:ttt + "_1"}.visible = ${window1.param:ttt + "_2"}.visible;
// или /* ... */