我有一个要求,需要读取在javascript中设置的变量(apiCall),如下所示:
<script type="text/javascript">
var oidValue = "";
var apiCall = false;
function firePatientSearch(lastname, firstname, dob, mrn, OID) {
apiCall = true;
SUBMIT_PDQ.focus();
SUBMIT_PDQ.click();
}
</script>
从我的GWT代码中,我这样做:
public native Boolean isAPICall()/*-{
return $wnd.apiCall;
}-*/;
但是答案总是错误的!我在发出JS函数firePatientSearch之后读取了isAPICall()调用。应该是对的,还是我在这里做错了什么?
最佳答案
尝试使用布尔值而不是布尔值作为JSNI方法的返回值。
public native boolean isAPICall()/*-{
return $wnd.apiCall;
}-*/;
根据Dev Guide,仅支持原始布尔值。
编辑:必须在您的JSNI代码中检查未定义的(以及其他特殊情况)。
关于javascript - 如何从GWT读取JS变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11264656/