1
0
mirror of https://shylinux.com/x/volcanos synced 2025-04-26 01:04:06 +08:00
volcanos/plugin/input.js
2022-07-18 15:04:59 +08:00

32 lines
1.4 KiB
JavaScript

Volcanos(chat.ONACTION, {help: "控件交互", _init: function(can, meta, cb, target) {
can.base.isFunc(cb) && cb(); switch (meta.type) {
case html.SELECT: meta.value && (target.value = meta.value); break
case html.BUTTON: meta.action == ice.AUTO && target.click(); break
}
},
run: function(event, can) { can.run(can.request(event, {_toast: "执行中..."})) },
list: function(event, can) { can.sup.Conf("mode") != "simple" && can.run(event) },
back: function(event, can) { can.sup.onimport._back(can.sup) },
refresh: function(event, can) { can.run(event) },
onclick: function(event, can) { can.sup.request(event, {_toast: "执行中..."})
can.Conf(mdb.TYPE) == html.BUTTON && can.run(event, [ctx.ACTION, can.Conf(mdb.NAME)].concat(can.sup.Input()))
},
onchange: function(event, can) { can.sup.request(event, {_toast: "执行中..."})
if (can.Conf(mdb.TYPE) == html.SELECT) { can.run(event) }
},
onkeydown: function(event, can) { can.onkeymap.input(event, can, event.target)
if (can.Conf(mdb.TYPE) == html.TEXTAREA) { if (!event.ctrlKey) { return } }
if (event.key == lang.ENTER) {
can.run(event), can.onmotion.focus(can, event.target)
can.onkeymap.prevent(event)
} if (!event.ctrlKey) { return }
switch (event.key) {
case "b": can.CloneInput(); break
case "m": can.CloneField(); break
default: return
} can.onkeymap.prevent(event)
},
})