【问题标题】:How to handle browser prompts in CasperJS如何在 CasperJS 中处理浏览器提示
【发布时间】:2015-06-08 05:22:07
【问题描述】:

场景是,当我单击按钮时,浏览器会显示一个警报,该警报接受带有确定和取消按钮的用户输入字段。现在请告诉我如何处理这种类型的警报。正如我们所知,CasperJS 不显示警报窗口。

这是 casperJS 代码

casper.then(function () {
        this.click('#new-asset > a:nth-child(1)');
        casper.setFilter("page.prompt", function(msg, currentValue) {
            if (msg === "Choose a filename for your asset") {
                return "Firsr.txt";
            }
        });
    }); 

【问题讨论】:

    标签: javascript phantomjs casperjs prompt


    【解决方案1】:

    您可以通过在 CasperJS 中使用过滤器轻松解决此问题。合适的是page.prompt

    // put somewhere before the prompt appears
    casper.setFilter("page.prompt", function(msg, currentValue) {
        if (msg === "What's your name?") {
            return "Chuck";
        }
    });
    

    这样的对话框称为提示 (window.prompt()),它不同于 window.alert()window.confirm()

    【讨论】:

    • 我已经添加了该提示窗口的屏幕截图,现在您如何单击“确定”和“取消”并提供示例代码..
    • B,当我点击新资产时,什么也没有发生
    • 好吧,您应该在单击任何打开提示的内容之前定义过滤器。
    • 是的......它工作,但它没有完成脚本。即使我没有给出任何等待();但它仍然卡在那里..
    • 它正在工作......再告诉我一件事,如果我想点击取消按钮怎么办??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-26
    • 2020-03-20
    • 2020-10-17
    相关资源
    最近更新 更多