Добавьте разделенные запятыми слова в текстовое поле и выполните функцию - PullRequest
0 голосов
/ 02 ноября 2018

У меня здесь есть моя программа, которая берет слово из # myTextarea0, а затем выдает результат другому TextArea. Все работает, но сейчас мне нужно добавить столько слов, сколько нужно запятой »,« Разделенные слова 1, Word 2 ». , Word3 Итак, сначала Word запустит код, который выдаст вывод, а затем перейдет к следующему Word после запятой, когда больше нет слов, чтобы остановить процесс. Любая идея, как это сделать? Вот мой код JS и HTML:

const puppeteer = require("puppeteer");

    async function MyFunction() {
      const browser = await puppeteer.launch({
        headless: false,
        args: ["--disable-infobars"]
      });
      const page = await browser.newPage();

      var site = "https://www.website.com/";

      //From #myTextarea0 I get my Strings already separated by Comma
      var s = $("#myTextarea0").val();
      var split = s.split(",");
      //GoTo URL + String EXAMPLE: www.website.com/string from #myTextarea0 (Works already need only after first run take next and run again)
      await page.goto(site + split[1]);
      //Here above by adding [1] to split he takes one string from the #myTextarea0 but how to take one and jump to the next and test again?

      try {
        await page.waitForSelector(".XYZ");
        await page.$(".XYZ");

        $("#myTextarea").val(s);
        $("#btntest").text("Start Testing");

      } catch (e) {
        $("#myTextarea1").val(s);
        $("#btntest").text("Start Testing");

      } finally {
        browser.close();
        $("#btntest").text("Start Testing");
      }

      MyFunction();
    }

    MyFunction();
  });
});

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

const textIn = document.querySelector("#in");
const textOut = document.querySelector("#out");
const btn = document.querySelector("button");

const addCommas = () => {
  const arr = textOut.value !== '' ? textOut.value.split(',') : [];
  arr.push(textIn.value);
  textOut.value = arr.join(",");
  textIn.value = '';
  
};

btn.addEventListener("click", addCommas);
<label for="in">Type words here</label>
<input type="text" id="in"><br><br>
<label>Output</label>
<input type="text" id="out">
<br><br>
<button>Calc</button>
0 голосов
/ 02 ноября 2018

JS-строки имеют метод split, который преобразует их в массивы строк, разделяя их в каждом экземпляре указанного аргумента:

var s = "First,Second,Third,Fourth";
var split = s.split(',');
console.log(split);//expected output: ["First", "Second", "Third", "Fourth"]
for (var i = 0; i < split.length; i++)
    doSomething(split[i]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...