Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么可以';t我将文本输入到此<;输入>;字段是否包含javascript代码?文本将闪烁回原始值_Javascript_Html_Forms_Input_Applescript - Fatal编程技术网

为什么可以';t我将文本输入到此<;输入>;字段是否包含javascript代码?文本将闪烁回原始值

为什么可以';t我将文本输入到此<;输入>;字段是否包含javascript代码?文本将闪烁回原始值,javascript,html,forms,input,applescript,Javascript,Html,Forms,Input,Applescript,观看视频,了解我的确切意思。谢谢 我正在尝试自动登录此网站。我需要首先输入登录名,但我无法使用我的代码进行登录,代码执行后,它始终会更改回原始值。我使用了codedocument.getElementsByClassName(“56AraZ”)[0].value=“我的用户名” 或 document.getElementsByClassName(''u 56AraZ')[0].setAttribute('value',“我的用户名”)该字段中的文本在屏幕上显示为要更改,但在我单击其他字段或单击其

观看视频,了解我的确切意思。谢谢

我正在尝试自动登录此网站。我需要首先输入登录名,但我无法使用我的代码进行登录,代码执行后,它始终会更改回原始值。我使用了code
document.getElementsByClassName(“56AraZ”)[0].value=“我的用户名”
document.getElementsByClassName(''u 56AraZ')[0].setAttribute('value',“我的用户名”)该字段中的文本在屏幕上显示为要更改,但在我单击其他字段或单击其他位置后,该文本闪回到上一个值,实际上没有更改!

我知道这个代码可以成功地在其他网站上,但这个网站是我棘手的。有人能帮我成功地在这个字段中输入文本吗?谢谢大家!

可能还有其他东西试图在该字段中写入-可能是其他脚本或浏览器(保存的表单数据)。我建议您使用setTimeout函数将脚本延迟一段荒谬的时间(如2秒或更长),如果有帮助,请将延迟降低到一个正常但可接受的值。因此,脚本是最后写入该字段的内容。和/或您可以尝试在window.load事件上运行它。

可能还有其他内容试图写入该字段-可能是其他脚本或浏览器(保存的表单数据)。我建议您使用setTimeout函数将脚本延迟一段荒谬的时间(如2秒或更长),如果有帮助,请将延迟降低到一个正常但可接受的值。因此,脚本是最后写入该字段的内容。和/或您可以尝试在window.load事件上运行它。

如果我从控制台运行它,它会工作:
document.getElementsByClassName(“56AraZ”)[0].value=“我的用户名”

因此,您可能在创建输入之前运行代码。让我们检查一下。 在setTimeout回调中,插入以下内容:

const field = document.querySelector("._56AraZ");
if (field) {
    field.value = "my username";
} else {
    alert('No input field!');
}

如果您试图过早填写字段,这应该会让您知道。如果是这种情况,您必须知道何时创建输入字段,并在它发生后运行代码。如何准确操作-我无法告诉您,因为我对您的网站架构一无所知。

如果我从控制台运行此功能,它会工作:
document.getElementsByClassName(“56AraZ”)[0].value=“我的用户名”

因此,您可能在创建输入之前运行代码。让我们检查一下。 在setTimeout回调中,插入以下内容:

const field = document.querySelector("._56AraZ");
if (field) {
    field.value = "my username";
} else {
    alert('No input field!');
}

如果您试图过早填写字段,这应该会让您知道。如果是这种情况,您必须知道何时创建输入字段,并在它发生后运行代码。如何准确操作-我无法告诉您,因为我对您的网站架构一无所知。

我使用过它,但在setTimeout(function(){document.getElementsByClassName(“\u 56AraZ”)[0].value=“my username”},3000)中无效;你能给我写一些代码吗,谢谢!我使用过它,但在setTimeout(function(){document.getElementsByClassName(“\u 56AraZ”)[0].value=“my username”;},3000)中无法使用;你能给我写一些代码吗,谢谢!我想你误解了我的问题。请看我的视频。问题是在将代码输入到控制台后,它工作了,但在我单击网站上的某个位置后,我输入的文本消失了。我做了你给我的第二个代码,但同样的问题发生了,我看过你的视频,并执行了类似的测试。我认为您应该检查输入字段的onFocus和onBlur附带的函数。它们可能包含清除输入的内容。另外,看看onChange侦听器,它可能会阻止清除焦点或模糊。按程序填充字段时不会发生onChange事件。谢谢您,医生!谢谢你的帮助,但我是新手,不理解所有的技术术语,但我正在努力学习。我需要学习更多才能理解你说的话。atm机,你能帮我查一下你说的话吗?idk如何检查它。是这个网站,我想你误解了我的问题。请看我的视频。问题是在将代码输入到控制台后,它工作了,但在我单击网站上的某个位置后,我输入的文本消失了。我做了你给我的第二个代码,但同样的问题发生了,我看过你的视频,并执行了类似的测试。我认为您应该检查输入字段的onFocus和onBlur附带的函数。它们可能包含清除输入的内容。另外,看看onChange侦听器,它可能会阻止清除焦点或模糊。按程序填充字段时不会发生onChange事件。谢谢您,医生!谢谢你的帮助,但我是新手,不理解所有的技术术语,但我正在努力学习。我需要学习更多才能理解你说的话。atm机,你能帮我查一下你说的话吗?idk如何检查它。正如你已经知道的,这是一个网站,你可以尝试使用AppleScript来做这件事,这样你的自动化系统就会尝试模拟一个人会做什么,而不是通过javascript来做。在我的测试中,您需要做的是发送一个tab键代码,然后键入用户名。如果您愿意,我可以给您提供伪代码,不过我使用库来处理冗长的内容。谢谢!我知道applescript本身就可以实现自动化,但出于某些优化原因,我仍然希望Javascript能够实现自动化。你能告诉我,javascript有可能做到这一点吗?还是说javascript不可能做到这一点?为什么?因为我希望我的脚本在做其他事情时在后台运行。只有AS一个人,我必须停止做我正在做的事情,把浏览器放在前面,等待这个过程完成。如果可以用JS来完成,那就太酷了,也许这是不可能的?我确实尝试过使用javascript自动化一些网站,但有些网站比其他网站更难驱动,所以这取决于你愿意做多少