Javascript的超级新手在这里.我有一个空白的问题,我希望有人可以帮助我.
我有一个看起来像这样的函数:
function createLinks()
{
var i = 0;
tbody = document.getElementsByTagName('tbody')[3];
console.log('test order ID: '+document.getElementsByTagName('tbody')[3].getElementsByTagName('tr')[0].getElementsByTagName('td')[1].textContent.replace(/^\s+|\s+$/g,''))
trs = tbody.getElementsByTagName('tr');
console.log('trs.length = '+trs.length);
for (i=0;i<trs.length;i++)
{
orderId = trs[i].getElementsByTagName('td')[1].textContent.replace(/^\s+|\s+$/g,'');
console.log('order: '+orderId);
hrefReturn = 'https://www.example.com/example.html?view=search&range=all&orderId='+orderId+'+&x=13&y=17';
linkReturn = '<a href='+hrefReturn+'>'+orderId+'</a>';
console.log(linkReturn);
trs[i].getElementsByTagName('td')[1].innerHTML = linkReturn;
}
}
Run Code Online (Sandbox Code Playgroud)
我在最初加载页面时使用另一个函数调用此函数.这非常有效.
但是,当页面上的数据发生变化时,我也会以另一种方式调用此函数.有一个下拉列表,我附加了onClick属性.该onClick事件调用第一个函数,该函数又调用第二个函数(上图).这两个函数都保存到文本变量中并附加到文档中,如下所示:
var scriptTextLinks = " function createLinksText() { var i = 0; tbody = document.getElementsByTagName('tbody')[3]; console.log('test order ID: '+document.getElementsByTagName('tbody')[3].getElementsByTagName('tr')[0].getElementsByTagName('td')[1].textContent.replace(/^\s+|\s+$/g,'')); trs = tbody.getElementsByTagName('tr'); console.log('trs.length = '+trs.length); for (i=0;i<trs.length;i++) { orderId = trs[i].getElementsByTagName('td')[1].textContent.replace(/^\s+|\s+$/g,'').replace(/\s/g,''); orderId = orderId.replace(/\s/g,''); console.log('order: '+orderId); …Run Code Online (Sandbox Code Playgroud) 我是Python的新手,并试图做一个嵌套循环.我有一个非常大的文件(110万行),我想用它来创建一个文件,每行包含接下来的N行,例如接下来的3行:
1 2
1 3
1 4
2 3
2 4
2 5
Run Code Online (Sandbox Code Playgroud)
现在我只是试图让循环使用rownumbers而不是字符串,因为它更容易可视化.我想出了这个代码,但它的表现并不像我想要的那样:
with open('C:/working_file.txt', mode='r', encoding = 'utf8') as f:
for i, line in enumerate(f):
line_a = i
lower_bound = i + 1
upper_bound = i + 4
with open('C:/working_file.txt', mode='r', encoding = 'utf8') as g:
for j, line in enumerate(g):
while j >= lower_bound and j <= upper_bound:
line_b = j
j = j+1
print(line_a, line_b)
Run Code Online (Sandbox Code Playgroud)
它不是我想要的输出,而是给我这个:
990 991
990 992
990 993
990 994
990 992 …Run Code Online (Sandbox Code Playgroud)