Событие oninput в webix

SveSve
edited September 2018 in Technical questions

Добрый день.
Есть ли хоть что-то похожее на событие oninput из js ?
Нашёл как сделать на чистом JS, нашёл как на jquery, но на webix не нашёл.
https://snippet.webix.com/f0ua09uv

Если так нельзя, то может подскажете что-то похожее (кроме OnKeyPress, которая, во-первых, реагирует даже на Ctrl, Alt, Shift и прочее, а во-вторых, считываемый по ней через .getValue() текст не тот, что в поле ввода, а тот что был до изменения, и неважно что код нажатого символа есть, я ведь мог и Ctrl+V нажать)?

На крайний случай хоть подскажите как из jquery найти элемент с id=myOnInputWebix (из примера), может какой-то конвертер есть, типа:
$$("myOnInputWebix").tojquery().on('input', function () {
webix.message("Уо-хо-хо");
});

Comments

  • SveSve
    edited September 2018

    Нашёл как сконвертить webix объект в js и там навесить обработчик, всё получилось:
    https://snippet.webix.com/ftpwdpal

    Но вопрос с конвертацией webix объекта в jquery остаётся открытым.
    А также интересует обратный процесс, можно ли получить webix объект, из обычного, например преобразовать this обратно:

    $$("myOnInputWebixJS").getInputNode().oninput = function () {
    alert(this);
    };

  • Я дико извиняюсь, но как преобразовать this обратно я нашёл, не знаю, насколько это правильный способ:
    $$("myOnInputWebixJS").getInputNode().oninput = function () {
    webix.message($$(this).getValue());
    };

    Значит остаётся только вопрос с конвертацией в jquery и обратно

  • Здравствуйте,

    Есть ли хоть что-то похожее на событие oninput из js ?

    Возможно использование метода onTimedKeyPress
    Пример:
    https://snippet.webix.com/l5irbkaf

  • Но вопрос с конвертацией webix объекта в jquery остаётся открытым.

    Возможно, Вам будет полезна информация о JQuery Integration. Ознакомиться можно тут.

  • edited September 2018

    Здравствуйте @Sve ,

    Нативные html-события на нодах можно отслеживать через webix.event. Например:
    https://snippet.webix.com/5busl5jv

    Но вопрос с конвертацией webix объекта в jquery остаётся открытым.

    Объясните, пожалуйста, в чём цель такого преобразования?
    jQuery работает с любым html-контентом, так что можно получить ноду компонента по любому его свойству. Метод webix.$$ позволяет получить webix view не только по id, но и по ноде (он же просто $$, но при использовании других фреймворков лучше чётко определить namespace во избежание конфликтов).
    В целом, вот такая запись

    var node = $("[view_id='text_input_id']")[0];
    webix.$$(node);
    

    является усложнённым аналогом

    webix.$$("text_input_id");
    

    но я не могу придумать сценария, где такой способ был бы предпочтительным.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!