Мы можем получить доступ к элементам HTML, используя объект refs. В качестве первого шага мы добавляем атрибут ref к элементу DOM и получаем к нему доступ, используя this.ref в блоке сценария тега.
-
Присоединить ref — добавить атрибут ref к элементу DOM.
Присоединить ref — добавить атрибут ref к элементу DOM.
<button ref = "clickButton">Click Me!</button>
-
Используйте объект refs — теперь используйте объект refs в событии монтирования. Это событие вызывается, когда RIOT монтирует пользовательский тег и заполняет объект refs.
Используйте объект refs — теперь используйте объект refs в событии монтирования. Это событие вызывается, когда RIOT монтирует пользовательский тег и заполняет объект refs.
this.on("mount", function() { this.refs.clickButton.onclick = function(e) { console.log("clickButton clicked"); return false; }; })
пример
Ниже приведен полный пример.
custom6Tag.tag
<custom6Tag> <form ref = "customForm"> <input ref = "username" type = "text" value = "Mahesh"/> <button ref = "clickButton">Click Me!</button> <input type = "submit" value = "Submit" /> </form> <script> this.on("mount", function() { this.refs.clickButton.onclick = function(e) { console.log("clickButton clicked"); return false; }; this.refs.customForm.onsubmit = function(e) { console.log("Form submitted"); return false; }; }) </script> </custom6Tag>
custom6.htm
<html> <head> <script src = "https://cdnjs.cloudflare.com/ajax/libs/riot/3.13.2/riot+compiler.min.js"></script> </head> <body> <custom6Tag></custom6Tag> <script src = "custom6Tag.tag" type = "riot/tag"></script> <script> riot.mount("custom6Tag"); </script> </body> </html>
Это даст следующий результат —