【问题标题】:JXBrowser, waiting for window.location = another urlJXBrowser,等待 window.location = 另一个 url
【发布时间】:2017-08-24 09:41:25
【问题描述】:

我必须在页面上提交表单。我导航,注入我的脚本,然后填写表格,然后点击提交。

但是,表单是标准帖子不是 ajax,因此浏览器会重新加载所有内容。

找出新页面实际重新加载的最佳方法是什么?

loadAdapter 功能将不可用,因为我没有使用 loadURL() 导航到 url,但页面已在浏览器本身内重新加载。

我可以手动休眠一段时间,但是我想知道是否有更好的解决方案。

【问题讨论】:

    标签: jxbrowser


    【解决方案1】:

    您可以将 LoadAdapter 用于标准 POST 请求。请看下面的示例代码:

    import com.teamdev.jxbrowser.chromium.Browser;
    import com.teamdev.jxbrowser.chromium.events.FinishLoadingEvent;
    import com.teamdev.jxbrowser.chromium.events.FrameLoadEvent;
    import com.teamdev.jxbrowser.chromium.events.LoadAdapter;
    import com.teamdev.jxbrowser.chromium.swing.BrowserView;
    import java.awt.BorderLayout;
    import javax.swing.JFrame;
    import javax.swing.WindowConstants;
    
    public class LoadListenerSample {
    public static void main(String[] args) {
        final Browser browser = new Browser();
        BrowserView view = new BrowserView(browser);
    
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.add(view, BorderLayout.CENTER);
        frame.setSize(800, 600);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    
        browser.addLoadListener(new LoadAdapter() {
    
            @Override
            public void onFinishLoadingFrame(FinishLoadingEvent event) {
                System.out.println("LoadListenerSample.onFinishLoadingFrame");
            }
    
            @Override
            public void onDocumentLoadedInFrame(FrameLoadEvent event) {
                System.out.println("LoadListenerSample.onDocumentLoadedInFrame");
            }
    
    
        });
    
        browser.loadURL("https://www.w3schools.com/html/tryit.asp?filename=tryhtml_form_submit");
    }
    }
    

    【讨论】:

      猜你喜欢
      • 2019-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-02
      • 1970-01-01
      • 2021-01-02
      • 1970-01-01
      • 2017-03-14
      相关资源
      最近更新 更多