cefsharp如何检查页面中的所有Java脚本是否完成?

时间:2018-11-05 19:04:34

标签: c# cefsharp

Iam使用CefSharp浏览器和c#。

我尝试登录到页面,但是当我单击“提交”按钮时,页面没有刷新,直到登录成功为止;否则,页面未加载到服务器中并收到消息密码错误

提交后如何检查页面中是否所有Java脚本?

//Initialize ChromiumWebBrowser
Chromium = new ChromiumWebBrowser("www.exapmle.com/login");

        this.panel2.Controls.Add(chrom);
        Chromium.Show();
        Chromium.Dock = DockStyle.Fill;

点击提交按钮 var cvbar = chrom.EvaluateScriptAsync(“ document.getElementById(\” login_u \“);

我要在这里检查所有JavaScript是否已完成  像这样

 if(javascripteCompleted()
 {
        var response = cvbar.Result;
        if (response.Success == true && response.Result.ToString() != "")
        {
          //  MessageBox.Show(response.Result.ToString());
        }
  }

谢谢

1 个答案:

答案 0 :(得分:1)

这是我只在加载网页后才显示网页,然后再显示SPINNER的操作

private void Cefbrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
    {
        if (!e.IsLoading)
        {
            Application.Current.Dispatcher.Invoke(delegate
            {
                myspin.Visibility = Visibility.Collapsed;
            });

        }
    }

我的XAML代码

<StackPanel Name="panel">
            <Grid VerticalAlignment="Stretch" HorizontalAlignment="Stretch" MinHeight="700" Height="{Binding ElementName=panel,Path=ActualHeight}" Name="maingrid">
                <fa:ImageAwesome Name="myspin" Icon="Spinner" Spin="True" SpinDuration="4" Height="80" />
            </Grid>
        </StackPanel>

最初,我放置了一个字体惊人的微调器,该页面显示了当加载状态更改if (!e.IsLoading)已满时正在加载页面,然后微调器进入后台,并按以下方式加载webWINDOW:-

chrome.Load(URL);

**当整个页面html + javascript + css加载时,FYI Loading_State_Changed起作用**