2016-11-10 15 views
0

我想从scala js中的网页上的表单中抓取一些文本框中的数据。我已经使用HTML'` onclick事件就像试了一下:在scala js中按下按钮时抓取网页中的数据

<button id="submit" type="button" onclick="TutorialApp().fun()">Submit</button> 

和我创建了一个功能,我TutorialApp对象,如:

object TutorialApp extends JSApp { 

@JSExport 
def main(): Unit = { 
    ..... 
} 

def fun():Unit = { 
println("Button is clicked") 
}  

但它显示错误TutorialApp()。 fun()不是一个函数。我的代码有什么问题?

回答

3

作为替代方案,你可能想在你的代码注册onclick处理:

import org.scalajs.dom 

def main(): Unit = { 
    dom.document.getElementById("submit").addEventListener("click", fun _) 
} 

的好处是,你不需要导出fun,你会得到编译时的名字安全(例如,如果您重命名fun,编译器会告诉你,如果你忘记重新命名它的地方)。

1

它通过在fun()之前添加@JSExport来工作。我没有注意到这一点。

相关问题