gpt4 book ai didi

javascript - document.forms[i] 代码在页面中有效,但在 Greasemonkey 中出现 "undefined"错误

转载 作者:行者123 更新时间:2023-11-30 18:34:00 26 4
gpt4 key购买 nike

所以有一个页面有大约 50 个表单。

第一个表单是搜索,所以我跳过那个表单。

剩下的49个,我在乎。

在这 49 个中,我只寻找 go 值等于 renew 的表单。

我在便签本上写了代码,它工作正常。

我将它粘贴到 Greasemonkey 中,然后我得到 "document.forms[i].go is undefined"

这是我的代码:

var i=1 ;
var total = document.forms.length -1;
while (i<=total) {

var go_val = document.forms[i].go.value;
if(go_val == "renew"){
document.forms[i].setAttribute('target','_blank');
}

i++;
}

我也试过这个,检查 go 元素是否存在并且表单没有产生错误,但不运行 setattribute

var i=0 ;
var total = document.forms.length -1;
while (i<=total) {
if(document.forms[i].go){
var go_val = document.forms[i].go.value;
if(go_val == "renew"){
document.forms[i].setAttribute('target','_blank');
}
}
i++;
}

为什么它在便签本中有效,但在 Greasemonkey 中无效?

最佳答案

我找到了:"Pitfall #3: Named Forms and Form Elements"并想通了...

var i=0;
var total = document.forms.length -1;
while (i<=total) {
var form = document.forms[i];
if(form.elements.namedItem("go")){
var input = form.elements.namedItem("go");
var go_val = input.value;

if(go_val == "renew"){
document.forms[i].setAttribute('target','_blank');
}
}
i++;
}

关于javascript - document.forms[i] 代码在页面中有效,但在 Greasemonkey 中出现 "undefined"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8822214/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com