如何使用Rhino执行JavaScript库并在JavaScript库上调用API来获取HTML

时间:2011-03-20 17:31:37

标签: java javascript rhino

我有一个JavaScript库,根据传递给库的参数生成html。例如该库有一个方法,它接受一个html按钮的id,然后该方法用html div(和一些内联css)包装html按钮,使它看起来很好。该方法返回按钮的html字符串表示。

是否可以将此JS库与Rhino一起使用,并通过传递一些id(实际上应该是html页面中按钮的id)调用该方法并获取该按钮的html字符串表示形式?

提前致谢

2 个答案:

答案 0 :(得分:2)

是的,可以将JS库加载到Rhino中并使用它们。然后,您可以指定window.location到html页面或创建一个元素,并使用innerHTML将它放入DOM中(如果您将HTML作为字符串)。如果您只是尝试通过其id属性抓取按钮,那么您可能会考虑使用document.getElementById而不是加载您的库。这是一篇博客文章,讨论将jQuery,Prototype和Mochikit等JS库加载到Rhino中:

http://ejohn.org/blog/bringing-the-browser-to-the-server/

答案 1 :(得分:0)

据我了解,Rhino库在Java程序中调用时无法访问其周围的HTML,因此您无法使用网页中的按钮ID。当然,如果您的库支持,您可以从头开始创建HTML代码。

如果您的按钮嵌入在applet周围的HTML页面中,则最好使用Javascript桥来调用浏览器的Javascript引擎。