Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JxBrowser JSFunction.invoke with object_Object_Jxbrowser - Fatal编程技术网

JxBrowser JSFunction.invoke with object

JxBrowser JSFunction.invoke with object,object,jxbrowser,Object,Jxbrowser,我想从Java调用一个JavaScript函数,并向该函数传递一个对象。我希望做的是: jsobjectobj=newjsobject(); 对象设置字符串(“属性1”、“值”); 对象集合编号(“属性2”,编号); 并通过JSFunction.invoke()方法将对象传递给JavaScript函数。但是JSObject显然没有默认构造函数,也没有类似“setString”的方法。JSONString也是如此 最后,我使用Google GSon库构建了一个JSON字符串,然后将其传递给“ne

我想从Java调用一个JavaScript函数,并向该函数传递一个对象。我希望做的是:

jsobjectobj=newjsobject();
对象设置字符串(“属性1”、“值”);
对象集合编号(“属性2”,编号);
并通过JSFunction.invoke()方法将对象传递给JavaScript函数。但是JSObject显然没有默认构造函数,也没有类似“setString”的方法。JSONString也是如此

最后,我使用Google GSon库构建了一个JSON字符串,然后将其传递给“new JSONString()”。您还有更好的方法吗


我希望您的文档能够解决这一点,而不是强迫我发明这个解决方案。这不是我想花时间解决的问题。

下面是一个代码示例,演示如何创建对象并为其设置一些属性:

Browser browser = new Browser();

browser.executeJavaScript("function foo(object) { console.log(object.property1); }");

JSObject object = browser.executeJavaScriptAndReturnValue("new Object()").asObject();
object.setProperty("property1", "value 1");
object.setProperty("property2", 15);

JSFunction function = browser.executeJavaScriptAndReturnValue("window.foo")
        .asFunction();
function.invoke(null, object);