Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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
Javascript 在BlackBerry中单击按钮时获取web响应_Javascript_Blackberry_Browserfield - Fatal编程技术网

Javascript 在BlackBerry中单击按钮时获取web响应

Javascript 在BlackBerry中单击按钮时获取web响应,javascript,blackberry,browserfield,Javascript,Blackberry,Browserfield,我在BB中加载了一个网页,如下所示 //RegBrowserFieldConfig extends BrowserFieldConfig RegBrowserFieldConfig regBrowserFieldConfig = new RegBrowserFieldConfig(); //RegBrowserFieldListener extends BrowserFieldListener RegBrowserFieldListener regBrowserFieldListener =

我在BB中加载了一个网页,如下所示

//RegBrowserFieldConfig extends BrowserFieldConfig
RegBrowserFieldConfig regBrowserFieldConfig = new RegBrowserFieldConfig();

//RegBrowserFieldListener extends BrowserFieldListener
RegBrowserFieldListener regBrowserFieldListener = new RegBrowserFieldListener();

BrowserField registrationBrowserField = new BrowserField(regBrowserFieldConfig);
registrationBrowserField.addListener(regBrowserFieldListener);
add(registrationBrowserField);

registrationBrowserField.requestContent("http://myurl.com/");
该网页加载良好。该网页中有一个submit按钮,它在HTML的表单元素中调用onsubmit。这是对JavaScript函数的调用。在该函数中,还有一些其他URL将根据需求触发

我需要的是得到这些URL调用的响应。我该怎么做呢?

我试过这样做

BrowserFieldListener list = new BrowserFieldListener() {

        public void documentLoaded(BrowserField browserField,
                Document document) throws Exception {               
            String url = document.getBaseURI(); //u can get the current url here... u can use ur logic to get the url after clicking the submit button  

                Serverconnection(url);//from this methode u can get the response
        }
    };

    browserField.addListener(list);
服务器连接

public String Serverconnection(String url) {

    String line = "";

    // if (DeviceInfo.isSimulator()) {
    // url = url + ";deviceSide=true";
    // } else {
    // url = url + ";deviceSide=true";
    // }
    url = url + getConnectionString();
    try {
        HttpConnection s = (HttpConnection) Connector.open(url);
        s.setRequestProperty("Content-Type",
                "application/x-www-form-urlencoded");
        s.setRequestProperty(
                "Accept",
                "text/html,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5");
        s.setRequestProperty(HttpProtocolConstants.HEADER_ACCEPT_CHARSET,
                "UTF-8");
        s.setRequestMethod(HttpConnection.GET);
        InputStream input = s.openInputStream();
        byte[] data = new byte[10240];
        int len = 0;
        StringBuffer raw = new StringBuffer();

        while (-1 != (len = input.read(data))) {
            raw.append(new String(data, 0, len));
        }

        line = raw.toString();

        input.close();
        s.close();
    } catch (Exception e) {
        System.out.println("response--- excep" + line + e.getMessage());
    }
    return line;

}
编辑

private static String getConnectionString() {
    String connectionString = "";
    if (WLANInfo.getWLANState() == WLANInfo.WLAN_STATE_CONNECTED) {
        connectionString = "?;interface=wifi";
    }

    else if ((CoverageInfo.getCoverageStatus() & CoverageInfo.COVERAGE_MDS) == CoverageInfo.COVERAGE_MDS) {
        connectionString = "?;&deviceside=false";
    } else if ((CoverageInfo.getCoverageStatus() & CoverageInfo.COVERAGE_DIRECT) == CoverageInfo.COVERAGE_DIRECT) {
        String carrierUid = getCarrierBIBSUid();
        if (carrierUid == null) {
            connectionString = "?;deviceside=true";
        } else {
            connectionString = "?;deviceside=false?;connectionUID="
                    + carrierUid + "?;ConnectionType=mds-public";
        }
    } else if (CoverageInfo.getCoverageStatus() == CoverageInfo.COVERAGE_NONE) {
    }
    return connectionString;
}

private static String getCarrierBIBSUid() {
    ServiceRecord[] records = ServiceBook.getSB().getRecords();
    int currentRecord;

    for (currentRecord = 0; currentRecord < records.length; currentRecord++) {
        if (records[currentRecord].getCid().toLowerCase().equals("ippp")) {
            if (records[currentRecord].getName().toLowerCase()
                    .indexOf("bibs") >= 0) {
                return records[currentRecord].getUid();
            }
        }
    }

    return null;
}

你想得到那个网址吗?不,我想得到回复。就像我们在安卓系统中使用httpresponse一样,我认为这会起作用。让我试着接受你的回答。非常感谢:-Serverconnection中使用的getConnectionString方法是什么?