我试图从BrowserField里面的Javascript中启动一个ajax请求。BlackBerry - Browserfield XMLHttpRequest无效
这是一个演示应用程序,它只是一个尝试在点击时发出ajax请求的html元素。
public MyScreen() {
// Set the displayed title of the screen
setTitle("MyTitle");
BrowserFieldConfig _myBrowserFieldConfig = new BrowserFieldConfig();
_myBrowserFieldConfig.setProperty(
BrowserFieldConfig.JAVASCRIPT_ENABLED, Boolean.TRUE);
_myBrowserFieldConfig.setProperty(BrowserFieldConfig.ALLOW_CS_XHR,
Boolean.TRUE);
BrowserField browser = new BrowserField(_myBrowserFieldConfig);
browser.displayContent(
"<!DOCTYPE html><html><head>"
+ "<script>function loadXMLDoc(){"
+ "alert('t'); "
+ "var xmlhttp;"
+ "if (window.XMLHttpRequest) "
+"{ "
+ "xmlhttp = new XMLHttpRequest(); "
+ "} "
+ "else { "
+ "xmlhttp = new ActiveXObject(\"Microsoft.XMLHTTP\"); "
+ "}"
+ " xmlhttp.onreadystatechange=function() "
+"{ "
+ " if (xmlhttp.readyState==4 && xmlhttp.status==200) "
+ "{"
// + " document.getElementById(\"myDiv\").innerHTML=xmlhttp.responseText;"
+ "}"
+"alert('State:'+xmlhttp.readyState+ 'status'+ xmlhttp.status)"
+ "} "
+ "xmlhttp.open(\"GET\",\"http://www.w3schools.com/ajax/demo_get.asp\",true);"
+ "xmlhttp.send(); "
+ "}"
+ "</script>"
+ "</head><body><h2>AJAX</h2><a onclick=\"javascript:loadXMLDoc();\">Request data</a><div id=\"myDiv\"></div></body></html>",
"http://www.w3schools.com");
add(browser);
}
的问题是,即使第一个警报不工作,所以应该有一个JavaScript语法错误,但好了,一切对我来说很好。我在我的电脑上从Firefox上试过这段代码,并显示警报(我知道跨域并不总是可行的)。 那么,我的脚本中有什么错误?
我已经在模拟器上用BB 5.0.0和7.0.0测试过了。
这没有奏效。 –
现在有什么症状? – Nate
我的初始状况没有任何变化。 –