Переменные в MainDocument.EvaluateScript

  • Автор темы Автор темы SlipDez
  • Дата начала Дата начала

SlipDez

Client
Регистрация
18.07.2018
Сообщения
453
Реакции
90
Баллы
28
Подскажите, возможна ли вставка своих переменных в метод MainDocument.EvaluateScript

Как пример того что необходимо реализовать

C#:
Развернуть Свернуть Копировать
string var1= "Значение";

instance.ActiveTab.MainDocument.EvaluateScript(@"window.tmp='var1'");

есть метод EvaluateScriptAsync() но так как асинхронный то в зенке работать не будет
 
Подскажите, возможна ли вставка своих переменных в метод MainDocument.EvaluateScript

Как пример того что необходимо реализовать

C#:
Развернуть Свернуть Копировать
string var1= "Значение";

instance.ActiveTab.MainDocument.EvaluateScript(@"window.tmp='var1'");

есть метод EvaluateScriptAsync() но так как асинхронный то в зенке работать не будет
Попробуйте, может быть в таком виде будет работать как необходимо:
C#:
Развернуть Свернуть Копировать
string var1= "Значение";
instance.ActiveTab.MainDocument.EvaluateScript(string.Format(@"window.tmp='{0}'", var1));
 
  • Оценить
Реакции: SlipDez
Спасибо, видимо опять моя невнимательность получилось сделать слиянием строк


Подскажите а тут что я делаю не так?


C#:
Развернуть Свернуть Копировать
Tab tab = instance.ActiveTab;  
string ks = "NDExNTA0MjExNTM";
string kkk = "(function() {window.t = \"" + ks + "\";window.localStorage = document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage;window.setInterval(() => window.localStorage.token = `\"${window.t}\"`);window.location.reload();})();";
tab.MainDocument.EvaluateScript(kkk);


C#:
Развернуть Свернуть Копировать
string var1= "NDExNTA0MjExNTMy";


instance.ActiveTab.MainDocument.EvaluateScript(string.Format(@"function() {window.t = \" '{0}' \";window.localStorage = document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage;window.setInterval(() => window.localStorage.token = `\"${window.t}\"`);window.location.reload();})();", var1));
109405
 
Спасибо, видимо опять моя невнимательность получилось сделать слиянием строк


Подскажите а тут что я делаю не так?


C#:
Развернуть Свернуть Копировать
Tab tab = instance.ActiveTab; 
string ks = "NDExNTA0MjExNTM";
string kkk = "(function() {window.t = \"" + ks + "\";window.localStorage = document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage;window.setInterval(() => window.localStorage.token = `\"${window.t}\"`);window.location.reload();})();";
tab.MainDocument.EvaluateScript(kkk);


C#:
Развернуть Свернуть Копировать
string var1= "NDExNTA0MjExNTMy";


instance.ActiveTab.MainDocument.EvaluateScript(string.Format(@"function() {window.t = \" '{0}' \";window.localStorage = document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage;window.setInterval(() => window.localStorage.token = `\"${window.t}\"`);window.location.reload();})();", var1));
Посмотреть вложение 109405
Написал по другому.
Я как-то не очень люблю String.Format

C#:
Развернуть Свернуть Копировать
string var1 = "NDExNTA0MjExNTMy";


            instance.ActiveTab.MainDocument.EvaluateScript($"function() {{window.t = \" '{var1}' \";window.localStorage = document.body.appendChild(document.createElement `iframe`).contentWindow.localStorage;window.setInterval(() => window.localStorage.token = `\"${{window.t}}\"`);window.location.reload();}})();");

Тут надо быть внимательным с экранированием:
для { => {{
для " => \"
 
  • Оценить
Реакции: SlipDez и djaga

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)