是否可以使用For循环更改字符串参数?

时间:2018-07-10 20:10:17

标签: javascript google-chrome-devtools

我不是程序员,也没有研究与之相关的东西,只是一个想运行代码以使我的工作变得更轻松的人。

我需要打开50个标签。逐个打开需要花费大量时间,因为当我单击“打开”按钮时,它会显示新的选项卡已打开,然后我必须回到原始页面以打开下一个选项卡,依此类推。 经过一个周末的研究,我发现Google Chrome浏览器具有一个“控制台”,可以对其进行修改以使网页能够根据需要工作。

以下是在此网页中打开选项卡的代码。我已经在控制台中运行了此代码,并且令人惊讶地有效:

if(typeof jsfcljs == 'function'){
jsfcljs(document.getElementById('ngFindListForm'), {'ngFindListForm:tblDataTable:0:j_id178':'ngFindListForm:tblDataTable:1:j_id178'},'_blank');}

打开下一个标签是:

if(typeof jsfcljs == 'function'){
jsfcljs(document.getElementById('ngFindListForm'),{'ngFindListForm:tblDataTable:1:j_id178':'ngFindListForm:tblDataTable:1:j_id178'},'_blank');}

如您所见,更改的代码“唯一”部分是冒号(0和1)之间的数字。 因此,根据我的基本中学编程技能,我认为我可以使用For Loop将这些数字从0更改为49(50个标签)。我已经这样尝试过了:

for (i = 0; i < 50; i++) {
param = 'ngFindListForm:tblDataTable:' + i +':j_id178';}

然后使用以下 param 参数:

if(typeof jsfcljs == 'function'){
jsfcljs(document.getElementById('ngFindListForm'),{param:'ngFindListForm:tblDataTable:1:j_id178'},'_blank');}

但是它不起作用。它只是使我在新标签页中打开的页面相同。 也许我已经弄清楚如何进行这项工作的逻辑是完全错误的,但这就是为什么我来这里问你。

谢谢

2 个答案:

答案 0 :(得分:0)

foreach内移动代码并使用[param](ES6)

var form = document.getElementById('ngFindListForm');
if (typeof jsfcljs == 'function') {
  for (i = 0; i < 50; i++) {
    var param = 'ngFindListForm:tblDataTable:' + i + ':j_id178';

    jsfcljs(form, {
      [param]: 'ngFindListForm:tblDataTable:1:j_id178'
    }, '_blank');
  }
}

OR

var form = document.getElementById('ngFindListForm');
if (typeof jsfcljs == 'function') {
  for (i = 0; i < 50; i++) {
    var obj = {};
    obj['ngFindListForm:tblDataTable:' + i + ':j_id178'] = 'ngFindListForm:tblDataTable:1:j_id178';

    jsfcljs(form, obj, '_blank');
  }
}

答案 1 :(得分:0)

有几种方法可以做到,最简单的方法是使用一个对象并设置字符串

function jsfcljs(e, o, t) {
  console.log(o);
}

for (let i = 0; i < 5; i++) {
  var obj = {}
  obj['ngFindListForm:tblDataTable:' + i + ':j_id178'] = 'ngFindListForm:tblDataTable:' + i + ':j_id178'
  jsfcljs(document.getElementById('ngFindListForm'), obj, '_blank');
}
<div id="ngFindListForm"></div>

相关问题