×
Vytvárame riešenia

Ako zakázať onChange pri nastavení hodnoty widgetu - pokračovanie

V tomto článku predstavím ešte jeden zaujímavý spôsob, ktorý zabráni spusteniu metódy onChange(). To sa môže udiať, ak sa na začiatku nastavujú východiskové hodnoty. Tento proces môže mať rôzne podoby, ktoré môžu predčasne vyvolať spustenie metódy onChange().
Pre zabránenie spusteniu eventu onChange stačí nastaviť vlastnosť _onChangeActive, ktorá sa postará o povolenia alebo zakázanie spustenia metódy onChange().
V nasledujúcom príklade bude demonštrované povolenie a zakázanie spustenia metódy onChange() prostredníctvom tlačidiel.
Príklad: Zápis do elementu <body>.
1
2
3
<div id="select"></div>
<div id="button1" data-dojo-type="dijit/form/Button">Change enabled</div>
<div id="button2" data-dojo-type="dijit/form/Button">Change disabled</div>
Príklad: Zápis do elementu <script>.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
require([
"dojo/ready",
"dijit/form/Select",
"dijit/registry",
"dojo/parser"
], function (ready, Select, registry) {
ready(function () {
new Select({
id: "select",
name: "select-control",
onChange: function () {
console.log("Item changed");
},
options: [
{
label: "TN",
value: "Tennessee"
},
{
label: "VA",
value: "Virginia",
selected: true
},
{
label: "WA",
value: "Washington"
},
{
label: "FL",
value: "Florida"
},
{
label: "CA",
value: "California"
}
]
},
"select");
var button1 = registry.byId("button1");
button1.onClick = function () {
var select = registry.byId("select");
select._onChangeActive = true;
console.log("Change enabled");
}
var button2 = registry.byId("button2");
button2.onClick = function () {
var select = registry.byId("select");
select._onChangeActive = false;
console.log("Change disabled");
}
});
});

Záver

Do pozornosti dávam aj článok Ako zakázať onChange pri nastavení hodnoty widgetu.


Dojo,_onChangeActive,priorityChange,_setValueAttr(),dijit/form/Select
Žiadna časť tohto článku nesmie byť reprodukovaná bez uvedenia autora a URL na túto stránku.
Viac informácií nájdete v sekcii O projekte.

Komentáre

Článok neobsahuje zatiaľ žiadne komentáre.

Pridať komentár

Meno (povinné)
Web
Správa (povinné)
Odoslať
Od najnovších