cefsharp如何检查页面中的所有Java脚本是否完成? [英] cefsharp how to check of all java script in page are completed?

查看:103
本文介绍了cefsharp如何检查页面中的所有Java脚本是否完成?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用CefSharp浏览器和c#进行访问。

Iam using CefSharp browser and c# .

我尝试登录到页面,但是当我单击提交按钮时,页面没有刷新,直到登录成功并且页面加载成功为止。在服务器中并获得消息密码错误

i try login to page but when i click the submit button the page didnt refresh untill login sucess and if not the page load in server and get message password error

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

How i can Check if all java script in page after i submit ?

//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\);

click submit button var cvbar = chrom.EvaluateScriptAsync("document.getElementById(\"login_u\");

我要在这里检查是否所有JavaScript都完成了
这样的操作

I want Here To check if all javascript completed something like this

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

谢谢

推荐答案

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

this is what i did to show webpage only when its loaded and until then show 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>

最初,我放了一个fontawesome微调器,它显示当加载状态更改为<$ c时,页面正在加载$ c>如果(!e.IsLoading)已满,则微调器进入后台,并按以下方式加载webWINDOW:-

initally i put a fontawesome spinner which shows that the page is loading when the loading state changes if (!e.IsLoading) is fullfilled, then the spinner goes into the background and webWINDOW is loaded like this: -

chrome.Load(URL);

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

**FYI Loading_State_Changed works when entire page html + javascript + css loads **

这篇关于cefsharp如何检查页面中的所有Java脚本是否完成?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆