【问题标题】:Handle Modal Dialog box input fields using puppeteer使用 puppeteer 处理模态对话框输入字段
【发布时间】:2018-02-27 15:45:44
【问题描述】:

我有一个网页,有注册按钮。单击注册后,它会显示模式对话框。我可以单击并获取对话框,但无法在对话框输入字段中输入值。以下代码的任何帮助

const puppeteer = require('puppeteer');
puppeteer.launch({headless: false}).then(async browser => {
  	const page = await browser.newPage();
  	await page.goto('https://paytm.com/paytmwallet');

page.waitForSelector('#site-wrapper > menu-user-screens > div > div > div > div.bigContainer-profile > div > ul > li.last > button');

const login=await page.$('#site-wrapper > menu-user-screens > div > div > div > div.bigContainer-profile > div > ul > li.last > button');
 login.click();

 await page.type('#input_0','87777799')
});

【问题讨论】:

    标签: javascript unit-testing automated-tests puppeteer


    【解决方案1】:

    在尝试输入之前,您必须确保选择器可用,就像您为站点包装器所做的那样,因此您需要做的就是将标有星号的行添加到您的 cade 库中,您就可以开始了。

    const puppeteer = require('puppeteer');
        puppeteer.launch({headless: false}).then(async browser => {
            const page = await browser.newPage();
            await page.goto('https://paytm.com/paytmwallet');
    
        page.waitForSelector('#site-wrapper > menu-user-screens > div > div > div > div.bigContainer-profile > div > ul > li.last > button');
    
        const login=await page.$('#site-wrapper > menu-user-screens > div > div > div > div.bigContainer-profile > div > ul > li.last > button');
         login.click();
    
         **page.waitForSelector('#input_0', {timeout:30000})
    
         await page.type('#input_0','87777799')
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-27
      • 1970-01-01
      • 1970-01-01
      • 2020-03-02
      • 2021-09-25
      • 1970-01-01
      相关资源
      最近更新 更多