gpt4 book ai didi

javascript - 如何更改 AJAX 驱动页面中 <input> 的名称字段?

转载 作者:行者123 更新时间:2023-11-28 01:53:49 25 4
gpt4 key购买 nike

对于此目标页面(抱歉,SO 不允许超链接到 62.0.54.118):

http://62.0.54.118/search?&q=42&oq=42&sourceid=chrome&ie=UTF-8&filter=0

,我想更改 <input> 的名称字段默认情况下使用用户脚本。

输入是:

<input class="gsfi" id="lst-ib" name="q" maxlength="2048" value="42"...>

我想将其更改为:

<input class="gsfi" id="lst-ib" name="&q" maxlength="2048" value="42"...>


也就是我要改q进入&qname默认输入字段。

我尝试编写一个脚本,(不起作用):

// ==UserScript==
// @name Normal Google Input
// @include http://62.0.54.118/*
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
// @require https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant GM_addStyle
// ==/UserScript==
/*- The @grant directive is needed to work around a design change
introduced in GM 1.0. It restores the sandbox.
*/
waitForKeyElements ("input[name*='q']", changeLinkQuery);

function changeLinkQuery (jNode) {
var oldName = jNode.attr ('name');
var newName = oldName.replace (/\q/, "&q");

jNode.attr ('name', newName);

return true;
}


此外,该页面是一个Ajax驱动的页面。

请修复我的错误脚本或帮助我编写另一个脚本,谢谢。

更新:我通过更改脚本中的一行解决了部分问题:

var newName = oldName.replace (/\q/, "&q");

var newName = oldName.replace (/q/, "&q");

然后我的脚本效果会更好。感谢@Gerard Sexton 的建议。

但是现在有一个新的错误,即 waitForKeyElements回调设置为 return true;对于页面的 AJAX,它添加了 &不间断。

它导致该字段为 name="&&&&&&&&&q"

如何修复它?

最佳答案

如果输入名称只是 q ,然后只需将 waitForKeyElements 调用更改为:

waitForKeyElements ("input[name='q']", changeLinkQuery);

这样它就会准确地寻找q ,而不是字符串中任意位置的 q。

<小时/>

如果这不是完全那个<input>的名字,在下面评论。

关于javascript - 如何更改 AJAX 驱动页面中 &lt;input&gt; 的名称字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19402779/

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