我遇到类似问题
unable to run an external javascript using a bookmarklet
但我正在Java应用程序中执行我的JavaScript,通过将脚本头部注入到通过Java应用程序加载的当前DOM中。
这个问题似乎是随机发生的。在某些情况下,它会返回[object HTMLScriptElement]
,有时会返回文本...
当我alert()
对象时,它返回文本!
我尝试了return String(hi);
,但仍无效果。
function returnsomeText(){
var hi = someArray.join(':');
alert(hi); //returns text:text:text:text as expected.
return hi; //returns [object HTMLScriptElement]
}
我很困惑因为导致这个问题的原因!如果JavaScript返回[object HTMLScriptElement]
,则我的Java应用程序无法处理文本。
这个问题在这里有更详细的说明:
答案 0 :(得分:5)
尝试return hi.toString();
答案 1 :(得分:0)
尝试添加.text,例如:
function returnsomeText(){
var hi = someArray.join(':');
alert(hi); //returns text:text:text:text as expected.
return hi.text;
}
HERE是一个演示:
document.write(document.body.children[3]); //writes [object HTMLScriptElement]
document.write(document.body.children[3].text); //writes text data